1.<bean>標(biāo)簽 id 和 name 的配置
?id : 使用了約束中的唯一約束四敞,里面不可以有特殊字符
?name :沒有使用約束中的唯一約束甲棍,理論上可以重復(fù)出現(xiàn)简识,但在實(shí)際開發(fā)中不使用,而且在getBean的時候會報錯感猛,里面可以有特殊字符
2.<bean>標(biāo)簽的生命周期
?init-method : Bean被初始化的時候執(zhí)行的方法
?destroy-method : 在容器銷毀時調(diào)用的方法
3.<bean>的作用域
?scope屬性配置Bean的作用域范圍
??singletion : 默認(rèn)值七扰,=true, 在IoC容器中只存在一個Bean實(shí)例陪白,以單例方式存在
??prototype : 每次從容器中調(diào)用Bean時颈走,都會返回一個新實(shí)例,即getBean()時等于new對象
??request : 每次Http請求都會創(chuàng)建一個新的Bean咱士。僅適用于WebApplicationCotext環(huán)境
??session : 同一個Http Session共享一個Bean疫鹊,不同的Session使用不同的Bean。僅適用于WebApplicationCotext環(huán)境
??globalsession : 必須在prolet環(huán)境下使用司致,僅適用于WebApplicationCotext環(huán)境
4.自動裝配
?由于在手動配置xml過程中拆吆,常常發(fā)生字母缺漏和大小寫等錯誤,而無法對其進(jìn)行檢查脂矫,使得開發(fā)效率降低枣耀。采用自動裝配將避免這些錯誤,并且使配置簡單化。當(dāng)一個bean節(jié)點(diǎn)帶有 autowire =" byName"的屬性時捞奕。
??①將查找其類中所有的set方法名牺堰,例如setUser,獲得將set去掉并且首字母小寫的字符串颅围,即user伟葫。
??②去spring容器中尋找是否有此字符串名稱id的對象。
??③如果有院促,就取出注入筏养;如果沒有,就報空指針異常常拓。