目錄
1.spring的兩個核心是什麼?
2.ioc實現的兩種方式是什麼?
3.bean管理的兩個操作是什麼?
4.bean管理的兩個操作的實現方式有哪些?
5.如何用xml方式建立物件?
6.如何用xml方式為物件注入常見的屬性?
方式1:set注入
方式2:有參構造注入
7.如何用xml方式為物件注入特殊型別的屬性?
1.注入外部bean
2.注入陣列、list、map
8.spring的bean有哪兩種型別?
9.bean的作用域常見的有哪些?
10.bean的生命週期?
11.什麼是註解?
12.如何用註解方式建立物件?
13.如何用註解方式注入屬性?
14.aop有哪些概念?
15.什麼是jdbctemplate?
16.如何使用jdbctemplate運算元據庫?
17.什麼是事務?
18.宣告式事務是如何建立的?
19.常見的事務傳播行為propagation有哪些?
20.事務的3個讀問題是什麼?
21.解決讀問題,需要設定事務隔離級別。都有哪些隔離級別?
建立物件、注入屬性
在xml中,使用bean標籤,裡面id:唯一標識 class:類路徑
1. 在類中新增set方法
2. 在xml中,使用property標籤,裡面name:屬性名 value:注入的屬性值
1. 在類中新增有參構造方法
2. 在xml中,使用constructor-arg標籤,裡面name:屬性名 value:注入的屬性值
在xml中,property標籤,裡面name:屬性名 ref:外部bean的id
在xml中,property標籤,裡面name:屬性名 再新增各自的標籤注入值
普通bean:返回型別就是xml中定義的bean型別
工廠bean:返回型別可以和xml中定義的bean型別不一樣 。建立類,實現factorybean。在實現方法中定義返回的型別
單例:在bean標籤裡設定scope="singleton"。在載入spring配置檔案時就會建立單例項物件。
多例:在bean標籤裡設定scope="prototype"。不在載入配置檔案時建立,而是在呼叫getbean方法時建立多例項物件。
1. 執行無參構造,建立bean例項是**的特殊標記,能簡化xml配置。作用在類上面、方法上面、屬性上面。2. 呼叫set方法,設定bean的屬性值
3. 執行bean的初始化方法
4. 獲取bean的例項物件
5. 執行bean的銷毀方法
格式:@註解名稱(屬性名=屬性值,屬性名=屬性值...)
建立bean例項的註解主要有:@component、@service、@controller、@repository
1. 引入依賴
2. 開啟元件掃瞄context:component-scan
3. 建立類,在類上面新增建立物件的註解 @component(value=「預設值是類名稱首字母小寫」)
方式1:@autowired 根據型別進行注入
方式2:@qualifier(value="名稱") 根據名稱進行注入。和@autowired搭配使用
方式3:@resource @resource(name="名稱") 可以根據型別注入,也可以根據名稱注入
方式4:@value(value="普通型別") 注入普通型別屬性
連線點:類裡面哪些方法可以被增強spring對jdbc進行封裝,使用jdbctemplate實現對資料庫的操作切入點:實際被真正增強的方法
通知:(增強)。實際增強的邏輯部分
切面:是動作。把通知應用到切入點的過程
1.根據資料庫建立實體類
2.編寫dao介面,列出方法
3.編寫dao介面的實現類,實現方法
1. 注入jdbctemplate一組操作,如果有乙個失敗了,所有操作都失敗。比如銀行轉賬2. 重寫方法:建立sql語句
如果是添刪改:int jdbctemplate(sql,args) args是sql中?的內容
如果是查: jdbctemplate(sql,返回型別)
如果要實現批量操作:jdbctemplate.batchupdate
一般在service層
特性:原子性、一致性、隔離性、永久性
步驟:1.開啟事務 2.進行業務操作 3.沒有發生異常就提交事務 4.出現異常,事務回滾
方式:程式設計式事務、宣告式事務(常用)
1. 在配置檔案中配置事務管理器
2. 在配置檔案中開啟事務註解
3. 在service類上面,或者service類裡面的方法上面,新增事務註解@transactional
1. required:如果有事務在執行,當前方法就在這個事務內執行。否則建立乙個新事務,在它自己的事務內執行
2. required_new:當前方法必須建立乙個新事務,在它自己的事務內執行
1. 髒讀:1個未提交事務,讀取到另1個未提交事務的修改資料
2. 不可重複讀:1個未提交事務,讀取到另1個提交事務的修改資料。導致1個事務兩次讀到的同乙個屬性的值不一樣
3. 幻讀:1個未提交事務,讀取到另1個提交事務的新添資料。導致1個事務兩次讀到的記錄數不一樣
C 最最基礎知識點
還在不斷學習更新完善中 因為最開始入門的語言是python學到裝飾器那一部分後放慢了速度開始學c 因為想打比賽。所以包括我以後的部落格都會預設把c 和python 異同進行比較。對我個人而言c 更多用於比賽 而我會一直繼續學習python。c 不同於python 格式相對較嚴格一般沒行末尾需帶 另外...
java 基礎複習 小知識點
2014年6月 11日 星期三 byte s 4 s s 4 編譯失敗 原因 它進行兩步操作,先運算後賦值,s 會被提公升為 int型別,運算的結果還是 int型別無法賦值給 short型別 s 4 編譯成功 原因 它進行一次賦值操作,在給s 賦值自動完成了強轉操作。2 異或 兩邊相同為 false...
spring 知識點梳理
1.spring預設所有管理的bean都是單例模式 懶載入,所有的bean都是交給spring容器中的map管理,生命週期與spring相同,如果使用多例模式,bean則是交給記憶體管理,生命週期與spring無關 2.ssm分層 控制層 服務層 資料層 對應的註解分別為 controller se...