上篇博客我們詳細的聊了《JavaEE開發(fā)之Spring中的多線程編程以及任務(wù)定時器詳解》,本篇博客我們就來聊聊條件注解@Conditional以及組合條件。條件注解說簡單點就是根據(jù)特定的條件來選擇Bean對象的創(chuàng)建。條件注解就是可以根據(jù)不同的條件來做出不同的事情。在Spring中條件注解可以說是設(shè)計模式中狀態(tài)模式的一種體現(xiàn)方式,同時也是面向?qū)ο缶幊讨卸鄳B(tài)的應(yīng)用部分。而組合注解就是將現(xiàn)有的注解進行組合。下方會給出具體的介紹和實例。

 

一、條件注解----@Conditional

本篇博客的本部分我們來聊一下條件注解,顧名思義,條件注解就是可以根據(jù)不同的條件來做出不同的事情。在Spring中條件注解可以說是設(shè)計模式中狀態(tài)模式的一種體現(xiàn)方式,同時也是面向?qū)ο缶幊讨卸鄳B(tài)的應(yīng)用部分。

Spring框架中,當我們使用條件注解時,我們會為每種獨立的條件創(chuàng)建一個類,根據(jù)這個類對應(yīng)的條件的成立情況我們來選擇不同的任務(wù)來執(zhí)行。當然我們在聲明任務(wù)時,一般使用接口來聲明。因為我們會在Spring的配置類中指定具體條件下的具體類。接下來,我們將來看一下Spring框架中@Conditional注解的具體使用方式。

當然同一個Service接口所對應(yīng)的條件集合中是互斥的,也就是說在特定情況下只有一個條件成立。

 

1、創(chuàng)建服務(wù)接口以及具體的服務(wù)類

首先我們來創(chuàng)建一個Service的接口,然后再基于遵循該接口的情況下來創(chuàng)建兩個Service類。下方我們將會在配置類中指定不同條件下會對應(yīng)不同的Service對象。首先我們先來創(chuàng)建Service的接口。下方這段代碼就是我們創(chuàng)建的Service的接口,該接口比較簡單,只有一個描述方法。在具體是Service類中我們將會給出description()方法的具體實現(xiàn),用此方法來區(qū)分不同類的實現(xiàn)。

        		

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式