本節主要內容:java
1:經過代碼演示實現零XML配置springspring
2:使用重點註解理解springboot
聲明:app
本文是《凱哥陪你學系列-框架學習之spring boot框架學習》中spring boot框架學習學前掌握之重要註解(2)-經過java的配置方式進行配置spring.框架
在上一節《spring boot框架學習學前掌握之重要註解(1)-spring的java配置方式》咱們把須要的環境搭建好了。那麼本節,將經過代碼演示,怎麼零配置實現spring 注入。學習
1:經過代碼演示實現零XML配置spring測試
一:項目結構:網站
請點擊此處輸入圖片描述.net
user實體對象:component
請點擊此處輸入圖片描述
private String userName; private String password; private Integer age; |
dao層:
請點擊此處輸入圖片描述
server層:
請點擊此處輸入圖片描述
Java註解配置(重點類)
請點擊此處輸入圖片描述
代碼以下:
@Configuration //經過該註解來代表該類是一個spring的配置。其至關因而一個xml文件 @ComponentScan(basePackages="com.kaigejava.springboot.javaconfig") //@ComponentScan 該註解配置掃描的包 public class springConfig { @Bean //經過該註解來代表是一個bean對象。至關因而XML中的<bean> public UserDao getUserDao(){ return new UserDao(); } } |
測試類:
請點擊此處輸入圖片描述
說明:
這裏使用了:
AnnotationConfigApplicationContext context
= new AnnotationConfigApplicationContext(springConfig.class);
而非使用的:
ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);
運行結果:
請點擊此處輸入圖片描述
咱們看到已經和咱們預期的結果同樣。說明經過註解方式能夠徹底替代xml文件。
2:使用重點註解理解
2.1:@Configuration的理解:
若是須要理解這個的話,咱們先回到spring 2.x時代。所有使用xml配置的僞代碼以下:
請點擊此處輸入圖片描述
@Configuration這個註解其實就是:
去掉被選中的部分。
2.2:@ComponentScan(basePackages="com.kaigejava.springboot.javaconfig")的理解
@ComponentScan該註解的功能和xml配置文件中的<context:component-scan >標籤功能同樣--組件掃描,掃描含有註解的類。
2.3:@bean的理解
先看下圖:
XML配置時代怎麼獲取userDao呢?
以下圖:
請點擊此處輸入圖片描述
經過上下圖對比。咱們能夠發現,@bean的註解其實和xml中<bean>節點功能同樣。
本節總結:
本節經過代碼實戰,讓咱們學到:
1:大體瞭解到@Configuration、@ComponentScan()和@bean的使用
2:經過spring 2.x時代的xml配置和註解進行比較,更深刻一步熟悉三個註解的使用
下節預告:
在下節課中,咱們將要講到另個一註解。先透露下這個註解的功能:
經過本註解,能夠直接讀取到外部配置文件的數據。
歡迎關注凱哥公衆號:凱哥Java
歡迎訪問凱哥我的網站:www.kaigejava.com
本文地址:http://www.kaigejava.com/article/detail/32