------------恢復內容開始------------
spring有兩種型別的bean,一種普通型別的bean另外一種工廠bean(factory bean)
二者的區別在於這句
,普通xm中bean在class裡定義什麼(book型別)型別的bean,則在測試引用得到時(book)時就用什麼型別的bean
book book=contest.getbean("book",book.class);
工廠bean,定義型別和返回型別可以不一致工廠bean方法:第一步建立類,讓這個類作為工廠bean,實現介面factorybean
第二步:實現介面的方法,在實現方法中定義返回的bean型別
bean的作用域的描述
在spring裡,可以設定建立的bean例項時,是單例項還是多例項
在spring裡,在預設情況下,建立的bean是單例項
如何設定多例項?
在建立物件的bean標籤裡有屬性設定用於設定單例項和多例項(scope=「(預設值singleton、多例項prototype)、request、session」)!!!!
singleton與prototype區別:singleton是單例項、prototype是多例項
scope值是singleton載入配置檔案時就會建立單例項物件
public class orderspublic string getoname()
public void setoname(string oname)
//在類中建立執行的初始化方法
public void initmethod()
//在類中建立執行的銷毀方法
public void destroymethod()
}
在xml檔案的配置
測試bean的後置處理器的使用說明:
後置處理器是在bean生命週期裡有多加兩步:加在第三步前後
(1)通過構造器建立bean例項(無參構造)(2)為bean的屬性設定值和對其他bean引用(呼叫set方法)
(2.1)把bean的例項傳遞個bean後置處理器的乙個方法執行
postprocessbeforeinitialization
(3)呼叫bean的初始化方法(需要進行初始化的方法配置在xml檔案建立物件時後面加init-method="")(3.1)
把bean的例項傳遞個bean後置處理器的乙個方法postprocessafterinitialization
(4)獲取bean,獲取物件(5)當容器關閉,呼叫bean的銷毀方法(需要配置銷毀的方法)
演示新增後置處理器效果:
(1)建立類,並且實現介面beanpostprocessor
(2)配置兩個方法
(3)在xml配置檔案中配置後置處理器(在當前xml檔案配置的後置處理器,會應用到這個檔案建立的所有bean中,也就是說每個bean都會執行這個後置處理器的兩個方法)
基於xml方式自動裝配的知識點(ioc操作bean管理)
什麼是自動裝配:在之前xml中都是手動用來設定值
而現在自動裝配是根據指定裝配規則(根據屬性名稱或者型別),spring自動將匹配的屬性值進行注入
演示自動裝配:bean標籤屬性autowire,autowire屬性有兩個值(bytype、byname)
byname根據屬性名注入(注入值bean的id值和類屬性名稱一致)、bytype根據屬性型別注入
基於xml方式引入外部屬性檔案(可以用於連線資料庫時,引入一些固定值的)
配置資料庫資訊方式
IOC 操作 Bean 管理 基於註解方式
1 註解是 特殊標記,格式 註解名稱 屬性名稱 屬性值,屬性名稱 屬性值 2 使用註解,註解作用在類上面,方法上面,屬性上面 3 使用註解目的 簡化 xml 配置 1 component 用在bean層 2 service 用在service層 3 controller 用在dao層 4 repos...
IOC操作Bean管理(基於註解方式)
1.什麼是註解 註解是 的特殊標記,格式 註解名稱 屬性名稱 屬性值,屬性名稱 屬性值。使用註解,註解作用在類上面,方法宣告,屬性上面 使用註解的目的 簡化xml配置,使用更優雅 更簡潔的方式實現功能 2.spring針對bean管理中建立物件提供的註解 component 建議普通的元件 serv...
IoC控制反轉 管理Bean
一 ioc 概述 ioc 控制反 inverse of control 是spring 容器的核心,與di 依賴注入 dependency injection 是同乙個意思。從注入方法上看,主要可以劃分為三種型別 建構函式注入 屬性注入和介面注入。spring 支援建構函式注入和屬性注入。建構函式注...