當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring Bean的配置及常用属性
生活随笔
收集整理的這篇文章主要介紹了
Spring Bean的配置及常用属性
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
作為 Spring 核心機制的依賴注入,改變了傳統的編程習慣,對組件的實例化不再由應用程序完成,轉而交由 Spring 容器完成,在需要時注入應用程序中,從而對組件之間依賴關系進行了解耦。這一切都離不開 Spring 配置文件中使用的 元素。
Spring 容器可以被看作一個大工廠,而 Spring 容器中的 Bean 就相當于該工廠的產品。如果希望這個大工廠能夠生產和管理 Bean,這時則需要告訴容器需要哪些 Bean,以及需要以何種方式將這些 Bean 裝配到一起。
Spring 配置文件支持兩種不同的格式,分別是 XML 文件格式和 Properties 文件格式。
通常情況下,Spring 會以 XML 文件格式作為 Spring 的配置文件,這種配置方式通過 XML 文件注冊并管理 Bean 之間的依賴關系。
XML 格式配置文件的根元素是 ,該元素包含了多個 子元素,每一個 子元素定義了一個 Bean,并描述了該 Bean 如何被裝配到 Spring 容器中。
定義 Bean 的示例代碼如下所示:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.2.xsd"><!-- 使用id屬性定義person1,其對應的實現類為com.mengma.person1 --><bean id="person1" class="com.mengma.damain.Person1" /><!--使用name屬性定義person2,其對應的實現類為com.mengma.domain.Person2--><bean name="Person2" class="com.mengma.domain.Person2"/> </beans>在上述代碼中,分別使用 id 和 name 屬性定義了兩個 Bean,并使用 class 元素指定了 Bean 對應的實現類。
元素的常用屬性
| id | 是一個 Bean 的唯一標識符,Spring 容器對 Bean 的配置和管理都通過該屬性完成 |
| name | Spring 容器同樣可以通過此屬性對容器中的 Bean 進行配置和管理,name 屬性中可以為 Bean 指定多個名稱,每個名稱之間用逗號或分號隔開 |
| class | 該屬性指定了 Bean 的具體實現類,它必須是一個完整的類名,使用類的全限定名 |
| scope | 用于設定 Bean 實例的作用域,其屬性值有 singleton(單例)、prototype(原型)、request、session 和 global Session。其默認值是 singleton |
| constructor-arg | 元素的子元素,可以使用此元素傳入構造參數進行實例化。該元素的 index 屬性指定構造參數的序號(從 0 開始),type 屬性指定構造參數的類型 |
| property | 元素的子元素,用于調用 Bean 實例中的 Set 方法完成屬性賦值,從而完成依賴注入。該元素的 name 屬性指定 Bean 實例中的相應屬性名 |
| ref | 和 等元素的子元索,該元素中的 bean 屬性用于指定對 Bean 工廠中某個 Bean 實例的引用 |
| value | 和 等元素的子元素,用于直接指定一個常量值 |
| list | 用于封裝 List 或數組類型的依賴注入 |
| set | 用于封裝 Set 類型屬性的依賴注入 |
| map | 用于封裝 Map 類型屬性的依賴注入 |
| entry | 元素的子元素,用于設置一個鍵值對。其 key 屬性指定字符串類型的鍵值,ref 或 value 子元素指定其值 |
總結
以上是生活随笔為你收集整理的Spring Bean的配置及常用属性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 时间戳转换成时间
- 下一篇: Spring实例化Bean