Spring複習筆記 Spring中的Bean

2021-10-07 01:13:50 字數 1491 閱讀 2299

注意構造器例項化(最常用)

靜態工廠方式例項化

例項工廠方式例項化

singleton(單例):始終使用的同乙個物件 (預設)

prototype(原型):,每次都是乙個新的bean例項

request

session

globalsession

websocket

init-method屬性

用於指定bean類中的初始化方法的名稱,該方法會在bean例項建立之後被執行

【相當於servlet的init()方法】

destroy-method屬性

用於指定bean類中的銷毀方法的名稱,該方法會在ioc容器關閉時,bean例項銷毀之前被執行

【相當於servlet的destroy()方法】

【注意】必須設定 scope=「singleton」,銷毀方法才能生效

基於xml的裝配

-設值注入

滿足條件:1.bean必須有乙個無參構造方法2.必須提供setter方法

使用 為屬性注入值

-構造注入

滿足條件:bean必須提供有參構造方法

使用來為引數注入值

基於註解(annotation)的裝配 (最常用)

自動裝配

註解自動注入

新增註解自動掃瞄包

@controller …

作用域註解:@scope(value=「singleton|prototype」)

初始化方法註解:@postconstruct

銷毀方法註解:@predestory

簡單型別的引數:@value《無需提供set方法》

引用型別的引數:@autowired 通過型別 可以與@qualifer註解搭配 按照名稱匹配

@resource 預設按照名稱,也可以按照型別

集合資料型別無法使用註解注入,只能通過xml配置實現

bean標籤的id屬性和name屬性的區別

id和name都可以取出bean,但是id屬性用來唯一標識bean,id的屬性值不可重複

name的屬性值可以有多個,用逗號隔開,並可能和其他bean重名

使用beanfactory根介面建立spring ioc容器時,bean物件使用延遲載入方式,只有真正呼叫getbean()方法時,才真正建立bean物件

ioc容器建立bean例項的執行流程 重點

建立ioc容器時,解析配置檔案,獲取每乙個標籤的class屬性(bean的完整類名),通過反射呼叫class.forname(「完整類名」).newinstance()方法建立bean物件(呼叫無參的構造方法),並將標籤的id屬性作為key,物件作為value,儲存在ioc容器內部的乙個map中

呼叫getbean()方法時,ioc容器根據方法中指定的bean的id屬性值,查詢map中是否存在對應的key,如果存在,則直接將此key對應的bean物件返回

spring管理的類如何呼叫非spring管理的類

spring管理的類如何呼叫非spring管理的類.就是使用乙個spring提供的感知概念,在容器啟動的時候,注入上下文即可.下面是乙個工具類.1 import org.springframework.beans.bean ception 2import 3import 4import org.sp...

Spring基礎框架三 深入理解SpringMVC

spring mvc屬於springframework的後續產品,spring mvc框架提供了構建web應用程式的全功能mvc模組,是一種輕量級web框架。使用了mvc架構模式的思想,通過把model,view,controller分離,將web層進行職責解耦,把複雜的web應用分成邏輯清晰的幾部...

SpringMVC學習筆記之與Spring的關係

需要進行 spring 整合 springmvc 嗎 還是否需要再加入 spring 的 ioc 容器嗎 是否需要再 web.xml 檔案中配置啟動 spring ioc 容器 contextloaderlistener 嗎 需要 通常情況下,類似於資料來源 事務 整合其它框架都是放在spring ...