日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring框架—③依赖注入DI、Bean作用域及自动装配

發布時間:2024/3/12 javascript 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring框架—③依赖注入DI、Bean作用域及自动装配 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

依賴注入

DI,Dependency injection
依賴: 指bean對象的創建依賴于Spring容器
注入: 指Bean對象所依賴的資源,由容器來設置和裝配

在beans.xml中配置
1、常量注入

<!--普通字段--><bean id="user1" class="com.anye.pojo.User"><property name="name" value="anye"/></bean>

2、Bean注入

<!--引用其他bean使用ref--> <property name="address" ref="addr"/>

3、數組注入

<property name="books"><array><value>《三體》</value><value>《超新星紀元》</value><value>《球狀閃電》</value><value>《流浪地球》</value></array></property>

4、List注入

<property name="hobbies"><list><value>說唱</value><value>電影</value><value>游戲</value><value>科幻</value></list></property>

5、Map注入

<property name="card"><map><entry key="IdCard" value="6666666888888884444"/><entry key="StudyId" value="03163000"/></map></property>

6、set注入

<property name="games"><set><value>GTA5</value><value>PUBG</value><value>DOTA2</value><value>deadcoming</value></set></property>

7、空值注入

</property><property name="worried"><null/></property>

8、Properties注入

<property name="card"><props><prop key="StudentCard">03162000</prop><prop key="IdCard">123456789012345678</prop></props></property>

拓展:
1、p命名空間注入
注意:需要導入對應的約束文件

<!--p:property屬性,命名空間注入--><bean id="user5" class="com.anye.pojo.User" p:name="安月" p:age="18" p:sex=""/>

2、c命名空間注入

<!--c:constructor構造器:命名空間注入--><bean id="user6" class="com.anye.pojo.User" c:name="安夜" c:age="20" c:sex=""/>

Bean作用域及自動裝配

??在Spring中,那些組成應用程序的主體及由SpringIOC容器所管理的對象,被稱之為bean。簡單地講,bean就是由IOC容器初始化、裝配及管理的對象。

配置文件中定義bean時,我們不僅可以配置Bean屬性值及相互之間的依賴關系,還可以定義Bean的作用域。作用域會對Bean的生命周期和創建方式產生影響。

Bean的作用域類型:

類型說明
singleton在 Spring 容器中僅存在一個 Bean 實例, Bean 以單例的形式存在,默認值。
prototype每次從容器中調用 Bean 時,都會返回一個新的實例,即相當于執行 new XxxBean() 的實例化操作。
request每次 http 請求都會創建一個新的 Bean , 僅用于 WebApplicationContext 環境。request.setAttribute("","")
session同一個 http Session 共享一個 Bean ,不同的 http Session 使用不同的 Bean,僅用于 WebApplicationContext 環境。session.setAttribute("","")
globalSession同一個全局 Session 共享一個 bean, 用于 Porlet, 僅用于 WebApplication 環境。application.setAttribute("","")

Spring以容器的方式,使得我們僅需配置,即可的到天然的單例模式
在五種作用域中,request、session和globalSession三種作用域僅在web的應用中使用。

自動裝配(了解)

自動裝配的屬性和引用的名稱一樣,可以使用自動裝配

<!--自動裝配,不建議使用,建議使用注解--> <bean id="user" class="com.anye.dao.User" autowire="byName"/>

總結

以上是生活随笔為你收集整理的Spring框架—③依赖注入DI、Bean作用域及自动装配的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。