动态网页技术(二)
?SSH整合的基本步驟
1、??Spring向下整合Hibernate(DAO層)
1.1使用Spring的IoC容器創建sessionFactory
1.2使用Spring的IoC容器創建DAO
2、??Spring中間管理業務層
2.1使用Spring的IoC容器創建Biz Bean
2.2使用Spring的AOP配置業務層事務
3、??Spring向上整合Struts2(控制層)
3.1配置監聽器和上下文參數
3.2使用Spring的IoC容器來管理Action
4、??其他
4.1使用Spring提供的過濾器解決中文亂碼問題
4.2使用Spring提供的OpenSessionInViewFilter解決懶加載問題
4.3使用Spring的IoC容器管理數據源
16.并行操作下數據庫事務出現的問題及含義;事務的隔離級別和四大屬性
1、并行操作下數據庫事務出現的問題:
?臟讀(Dirty read):臟讀發生在一個事務讀取了被另一個事務改寫但還未提交的數據時.如果這些改變在稍后被回滾,那么第一個事務讀取的數據就是無效的.
?不可重復讀(Nonrepeatable read):不可重復讀發生在一個事務執行相同的查詢兩次或兩次以上,但每一次查詢結果都不相同.這通常是由于另一個并發事務在兩次查詢之間更新了數據.
?幻讀(Phantom read):幻讀和不可重復讀相似.當一個事務(T1)讀取幾行紀錄后,另一個并發事務(T2)插入一些數據,幻讀就發生了.在后來的查詢中,第一個事務(T1)就會發現一些原來沒有的額外紀錄.
2、事務的隔離級別
?READ_UNCOMMITTED允許你讀取還未提交的改變了的數據.可能導致臟讀,幻讀或不可重復讀.
?READ_COMMITTED允許在并發事務已經提交后讀取,可防止臟讀,但幻讀和不可重復讀仍可能發生.
?REPEATABLE_READ對相同字段的多次讀取結果是一致的,除非數據被事務本身改變.可防止臟讀和不可重復讀,但幻讀仍可能發生.
?SERIALIZABLE完全服從ACID的隔離級別,確保不發生臟讀,不可重復讀和幻讀.這在所有隔離級別中也是最慢的,因為它是通過完全鎖定在事務中涉及的數據表來完成的.
3、事務的四大屬性設置
?事務的傳播特性PROPAGATION:
v? REQUIRED: 如果存在一個事務,則支持當前事務。如果沒有事務則開啟。
v? SUPPORTS: 如果存在一個事務,支持當前事務。如果沒有事務,則非事務的執行。
?只讀特性readonly=”true”
v?只讀事務。如果一個事務只對數據庫執行讀操作,設為只讀事務可以提高效率
?隔離級別特性isolation="DEFAULT"
v?事務的隔離級別。并行情況下保證事務的完整性。
?超時特性timeout="-1"
v?事務的超時時間。超時則事務回滾。
17.手動搭建Web項目,手動搭建SSH環境
1、安裝Tomcat
?? ?? 安裝版:只適用Windows,會自動安裝Window服務
??????? 解壓版:適合于其他操作系統,安裝完畢后需要配置環境變量,并可以添加成Window服務
??????? 建議安裝解壓版,了解Tomcat的啟動過程
2、配置Tomcat
???????? JAVA_HOME?? D:\java\jdk1.6.0_18
???????? CATALINA_HOME:??? D:\java\tomcat60
3、啟動和關閉Tomcat
???????? startup.bat? shutdown.bat
4.安裝Eclipse
???????? 解壓即可
5、手動創建Web項目
???????? 1、classes
???????? 2、lib
???????? 3、jsp
???????? 4、java
???????? 5、web.xml
???????? 6、servlet
6、手動部署Web項目
???????? 方式1:在WebApps下創建一個文件夾,并把WebRoot下所有內容復制到該目錄下
???????? 方式2:在server.xml的host標簽中配置如下內容<Context path="/jbm"
docBase="D:\java\Workspaces\jbmessage_java\WebRoot"reloadable="true"></Context>
7、搭建Hibernate環境并測試
???????? 1.添加jar
???????? 2.添加hibernate.cfg.xml
???????? 3.添加HibernateUtil.java
???????? 4.創建實體類和映射文件
???????? 5.在hibernate.cfm.xml中添加映射文件路徑
???????? 6.編寫測試類測試hibernate(需要添加slf-logging.jar)
8、搭建Struts2環境并測試
???????? 1.添加jar
???????? 2.在web.xml中配置總控制器
???????? 3.添加struts.xml
???????? 4.創建Action和JSP
???????? 5.配置struts.xml
???????? 6.測試Struts2
9、搭建Spring環境并測試
???????? 1.添加jar
???????? 2.創建applicationContext.xml
3.測試IoC?
轉載于:https://blog.51cto.com/suyanzhu/1561378
總結
- 上一篇: Js实现异步刷新(原创)
- 下一篇: 好玩的代码(1)