點(diǎn)擊下載圖片代碼(通過源代碼下載圖片)
本節(jié)主要內(nèi)容:
1:通過代碼演示實(shí)現(xiàn)零XML配置spring
2:使用重點(diǎn)注解理解
聲明:
本文是《凱哥陪你學(xué)系列-框架學(xué)習(xí)之spring boot框架學(xué)習(xí)》中spring boot框架學(xué)習(xí)學(xué)前掌握之重要注解(2)-通過java的配置方式進(jìn)行配置spring.
在上一節(jié)《spring boot框架學(xué)習(xí)學(xué)前掌握之重要注解(1)-spring的java配置方式》我們把需要的環(huán)境搭建好了。那么本節(jié),將通過代碼演示,怎么零配置實(shí)現(xiàn)spring 注入。
1:通過代碼演示實(shí)現(xiàn)零XML配置spring
一:項(xiàng)目結(jié)構(gòu):
請(qǐng)點(diǎn)擊此處輸入圖片描述
user實(shí)體對(duì)象:
展開全文
請(qǐng)點(diǎn)擊此處輸入圖片描述
private String userName;
private String password;
private Integer age;
dao層:
請(qǐng)點(diǎn)擊此處輸入圖片描述
server層:
請(qǐng)點(diǎn)擊此處輸入圖片描述
Java注解配置(重點(diǎn)類)
請(qǐng)點(diǎn)擊此處輸入圖片描述
代碼如下:
@Configuration //通過該注解來表明該類是一個(gè)spring的配置。其相當(dāng)于是一個(gè)xml文件
@ComponentScan(basePackages="com.kaigejava.springboot.javaconfig")
//@ComponentScan 該注解配置掃描的包
public class springConfig {
@Bean //通過該注解來表明是一個(gè)bean對(duì)象。相當(dāng)于是XML中的
public UserDao getUserDao(){
return new UserDao();
}
}
測(cè)試類:
請(qǐng)點(diǎn)擊此處輸入圖片描述
說明:
這里使用了:
AnnotationConfigApplicationContext context
= new AnnotationConfigApplicationContext(springConfig.class);
而非使用的:
ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);
運(yùn)行結(jié)果:
請(qǐng)點(diǎn)擊此處輸入圖片描述
我們看到已經(jīng)和我們預(yù)期的結(jié)果一樣。說明通過注解方式可以完全替代xml文件。
2:使用重點(diǎn)注解理解
2.1:@Configuration的理解:
如果需要理解這個(gè)的話,我們先回到spring 2.x時(shí)代。全部使用xml配置的偽代碼如下:
請(qǐng)點(diǎn)擊此處輸入圖片描述
@Configuration這個(gè)注解其實(shí)就是:
去掉被選中的部分。
2.2:@ComponentScan(basePackages="com.kaigejava.springboot.javaconfig")的理解
@ComponentScan該注解的功能和xml配置文件中的 標(biāo)簽功能一樣--組件掃描,掃描含有注解的類。
2.3:@bean的理解
先看下圖:
XML配置時(shí)代怎么獲取userDao呢?
如下圖:
請(qǐng)點(diǎn)擊此處輸入圖片描述
通過上下圖對(duì)比。我們可以發(fā)現(xiàn),@bean的注解其實(shí)和xml中 節(jié)點(diǎn)功能一樣。
本節(jié)總結(jié):
本節(jié)通過代碼實(shí)戰(zhàn),讓我們學(xué)到:
1:大致了解到@Configuration、@ComponentScan()和@bean的使用
2:通過spring 2.x時(shí)代的xml配置和注解進(jìn)行比較,更深入一步熟悉三個(gè)注解的使用
下節(jié)預(yù)告:
在下節(jié)課中,我們將要講到另個(gè)一注解。先透露下這個(gè)注解的功能:
通過本注解,可以直接讀取到外部配置文件的數(shù)據(jù)。
歡迎關(guān)注凱哥公眾號(hào):凱哥Java
歡迎訪問凱哥個(gè)人網(wǎng)站:www.kaigejava.com
本文地址:http://www.kaigejava.com/article/detail/32
掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請(qǐng)注明出處。