上接Spring框架學習筆記(三) 聲明式事務管理(xml配置) 1 配置文件方式使用aop思想配置 第一步 配置事務管理器 第二步 配置事務增強 第三步 配置切麵 聲明式事務管理(註解) 第一步 配置事務管理器 第二步 配置事務註解 第三步 在要使用事務的方法所在類上面添加註解 SSH三大框架整合 ...
上接Spring框架學習筆記(三)
聲明式事務管理(xml配置)
1 配置文件方式使用aop思想配置
第一步 配置事務管理器
第二步 配置事務增強
第三步 配置切麵
聲明式事務管理(註解)
第一步 配置事務管理器
第二步 配置事務註解
第三步 在要使用事務的方法所在類上面添加註解
SSH三大框架整合:
(1)struts2
(2)hibernate5.x
(3)spring4.x
回顧SSH框架知識點:
Hibernate框架
1 hibernate核心配置文件
(0)orm思想
- 對象關係映射
(1)資料庫信息
(2)hibernate信息
(3)映射配置
(4)hibernate核心配置文件
- 如果單純使用hibernate框架,核心配置文件名稱 hibernate.cfg.xml和位置 src下麵 固定的
- hibernate和spring整合時候,hibernate核心配置文件名稱和位置沒有固定要求的
2 hibernate映射配置文件
(1)實體類和資料庫表映射關係—使用orm思想
3 hibernate操作的步驟
(1)在spring框架對hibernate框架進行封裝,使用hibernateTemplate
Struts2框架
1 Action操作
(1)action創建三種方式
- 繼承類 ActionSupport
(2)配置action訪問路徑
- 創建struts.xml配置文件,這個文件名稱和位置固定 src下麵的
(3)配置訪問action的多個方法
- 使用通配符方式配置
(4)在action獲取表單提交數據
- 獲取request對象
** 使用ServletActionContext類獲取
- 屬性封裝
- 模型驅動(重點)
- 表達式封裝
(5)在action操作域對象
- 使用ServletActionContext獲取域對象
(6)配置struts2的過濾器
2 值棧
(1)向值棧放數據
- set方法
- push方法
- 定義變數,生成get方法
(2)從值棧獲取數據
- 在jsp中使用struts2標簽+ognl獲取
- <s:property>
- <s:iterator>
3 攔截器
(1)aop和責任鏈模式
(2)自定義攔截器
- 繼承MethodFilterInterceptor
- 重寫類裡面的方法
- 配置攔截器和action關聯
Spring框架
1 spring核心配置文件
(1)名稱和位置沒有固定要求
(2)在spring核心配置文件中引入schema約束
2 創建對象
(1)xml配置方式:<bean id=”” class=”” scope=””/>
(2)註解方式:四個註解
3 註入屬性(對象類型屬性)
(1)xml配置方式:
(2)註解方式:兩個註解
- autowired
- resource
3 使用ServletContext對象和監聽器實現
(1)在伺服器啟動時候,載入spring配置文件,創建對象
(2)配置spring的監聽器
(3)指定spring配置文件位置
4 jdbcTemplate
5 spring事務配置
(1)xml方式
(2)註解方式
SSH框架整合思想
1 三大框架應用在javaee三層結構
2 struts2框架和spring整合
(1)struts2的action在spring配置
3 spring框架和hibernate框架整合
(1)hibernate的sessionFactory交給spring配置
(2)把hibernate資料庫配置交給spring配置
整合struts2和spring框架
1 把struts2的action交給spring管理
2 實現過程
第一步 導入struts2的jar包
(1)導入用於整合的jar包
第二步 創建action
第三步 創建struts2核心配置文件,配置action
(1)位置在src下麵,名稱是struts.xml
第四步 配置struts2過濾器
第五步 導入spring的jar包
第六步 創建spring配置文件
(1)引入約束
(2)配置spring監聽器
(3)指定spring配置文件位置
第七步 把action交給spring進行配置(***)
(1)在spring配置action對象,在struts.xml中也配置action對象
(2)解決:
只需要在spring裡面配置action對象,不要在struts.xml中配置
Spring框架整合hibernate框架
1 把hibernate核心配置文件中配置資料庫信息,把資料庫信息在spring進行配置
2 把hibernate裡面的sessionFactory創建交給spring管理
具體實現
第一步 導入hibernate的jar包
(1)導入struts2和hibernate的jar包時候有jar衝突問題
在struts2裡面有jar包
在hibernate裡面有jar包
刪除低版本的jar包
(2)導入spring整合持久化層框架需要導入jar包
第二步 搭建hibernate環境搭建
1 創建實體類
2 配置實體類映射關係
3 創建核心配置文件
第三步 把hibernate核心配置文件資料庫配置,在spring進行配置
(1)把hibernate核心文件中資料庫配置去掉了,在spring配置
第四步 把hibernate的sessionFactory交給spring配置
(1)伺服器啟動時候,載入spring配置文件,把配置文件中對象創建
(2)把sessionFactory對象創建在spring配置
(3)因為創建sessionFactory代碼不是new出來的,而是多行代碼實現的
(4)spring裡面針對上面情況,封裝類,配置類對象可以創建sessionFactory
第五步 在dao裡面使用hibernateTemplate
(1)在dao得到hibernateTemplate的對象
(2)調用hibernate模板裡面save方法添加
沒有配置事務,做操作時候,出現異常
第六步 配置事務
HibernateTemplate介紹
1 HibernateTemplate對hibernate框架進行封裝,
直接調用HibernateTemplate裡面的方法實現功能
2 HibernateTemplate常用的方法
- Serializable save(Object entity) :添加操作
- void update(Object entity) :修改操作
- void delete(Object entity) :刪除操作
- <T> T get(Class<T> entityClass, Serializable id) :根據id查詢
- <T> T load(Class<T> entityClass, Serializable id): 根據id查詢
- List find(String queryString, Object... values) :查詢操作的方法
(1)第一個參數是 hql語句
(2)語句參數值
再次複習一下SSH框架整合過程:
第一步 導入jar包
第二步 搭建struts2環境
(1)創建action,創建struts.xml配置文件,配置action
(2)配置struts2的過濾器
第三步 搭建hibernate環境
(1)創建實體類
(2)配置實體類和資料庫表映射關係
(3)創建hibernate核心配置文件
- 引入映射配置文件
第四步 搭建spring環境
(1)創建spring核心配置文件
(2)讓spring配置文件在伺服器啟動時候載入
- 配置監聽器
- 指定spring配置文件位置
第五步 struts2和spring整合
(1)把action在spring配置(action多實例的)
(2)在struts.xml中action標簽class屬性裡面寫 bean的id值
第六步 spring和hibernate整合
(1)把hibernate核心配置文件中資料庫配置,在spring裡面配置
(2)把hibernate的sessionFactory在spring配置
第七步 在dao裡面使用hibernateTemplate
(1)在dao註入hibernateTemplate對象
(2)在hibernateTemplate對象中註入sessionFactory
第八步 配置事務
整合其他方式
1 spring整合hibernate時候,可以不寫hibernate核心配置文件
(1)把hibernate核心配置文件中,基本信息配置和映射引入都放到spring配置
Spring分模塊開發
1 在spring裡面配置多個內容,造成配置混亂,不利用維護
2 把spring核心配置文件中,一部分配置放到單獨的配置文件中,在spring核心配置文件中引入單獨配置文件
Spring框架到此暫時告一段落。