Spring DI注解
@DependsOn
@DependsOn
注解可以配置Spring IoC容器在初始化一個(gè)Bean之前,先初始化其他的Bean對象。下面是此注解使用示例代碼:
@Bean
@Bean注解主要的作用是告知Spring,被此注解所標(biāo)注的類將需要納入到Bean管理工廠中。@Bean注解的用法很簡單,在這里,著重介紹@Bean注解中initMethod
和destroyMethod
的用法。示例如下:
Scops注解
@Scope
@Scope注解可以用來定義@Component標(biāo)注的類的作用范圍以及@Bean所標(biāo)記的類的作用范圍。@Scope所限定的作用范圍有:singleton
、prototype
、request
、session
、globalSession
或者其他的自定義范圍。這里以prototype為例子進(jìn)行講解。
當(dāng)一個(gè)Spring Bean被聲明為prototype(原型模式)時(shí),在每次需要使用到該類的時(shí)候,Spring IoC容器都會(huì)初始化一個(gè)新的改類的實(shí)例。在定義一個(gè)Bean時(shí),可以設(shè)置Bean的scope屬性為prototype:scope=“prototype”
,也可以使用@Scope注解設(shè)置,如下:
@Scope(value=ConfigurableBeanFactory.SCOPE_PROPTOTYPE)
下面將給出兩種不同的方式來使用@Scope注解,示例代碼如下:
@Scope 單例模式
當(dāng)@Scope的作用范圍設(shè)置成Singleton時(shí),被此注解所標(biāo)注的類只會(huì)被Spring IoC容器初始化一次。在默認(rèn)情況下,Spring IoC容器所初始化的類實(shí)例都為singleton。同樣的原理,此情形也有兩種配置方式,示例代碼如下:
-
容器
+關(guān)注
關(guān)注
0文章
499瀏覽量
22130 -
代碼
+關(guān)注
關(guān)注
30文章
4837瀏覽量
69127 -
spring
+關(guān)注
關(guān)注
0文章
340瀏覽量
14398
發(fā)布評論請先 登錄
相關(guān)推薦
java spring教程
spring實(shí)例
怎么閱讀Spring源碼
Spring筆記分享
「Spring認(rèn)證」Spring Hello World 項(xiàng)目示例
使用Spring自定義注解的實(shí)現(xiàn)
Spring應(yīng)用 1 springXML配置說明
解析加載及實(shí)例化Bean的順序(零配置)
淺談Spring事務(wù)底層原理
Spring Web MVC注解
![<b class='flag-5'>Spring</b> Web MVC<b class='flag-5'>注解</b>](https://file1.elecfans.com/web2/M00/81/FF/wKgaomQvjouAEB3mAAEJjN1OpNQ018.jpg)
Spring Bean相關(guān)的4個(gè)注解及使用方法
![<b class='flag-5'>Spring</b> <b class='flag-5'>Bean</b>相關(guān)的4個(gè)<b class='flag-5'>注解</b>及使用方法](https://file1.elecfans.com/web2/M00/81/FF/wKgaomQvjviAWyDeAADCHy-wd84212.jpg)
容器配置及Spring Boot注解
![容器配置及<b class='flag-5'>Spring</b> Boot<b class='flag-5'>注解</b>](https://file.elecfans.com/web2/M00/9D/5E/poYBAGQvkDCAH2yDAABjOkpwCO8436.png)
Spring中@Component注解是怎么實(shí)現(xiàn)的
![<b class='flag-5'>Spring</b>中@Component<b class='flag-5'>注解</b>是怎么實(shí)現(xiàn)的](https://file.elecfans.com/web2/M00/9D/F3/pYYBAGQvxC2ADEcoAAAxhbkime4164.png)
Spring容器原始Bean是如何創(chuàng)建的?Spring源碼中方法的執(zhí)行順序
![<b class='flag-5'>Spring</b>容器原始<b class='flag-5'>Bean</b>是如何創(chuàng)建的?<b class='flag-5'>Spring</b>源碼中方法的執(zhí)行順序](https://file1.elecfans.com/web2/M00/8F/4D/wKgZomTMXxiALi1kAAAg9m1Iz1U688.png)
評論