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

 

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

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

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

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

 

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

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

        		

延伸閱讀

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