[size=medium]為了保證資料的一致性,在程式設計的時候往往需要引入事務這個概念。事務有4個特性:原子性、一致性、隔離性、永續性。
事務的種類有兩種:程式設計式事務和宣告式事務。程式設計式事務就是將事務處理放在程式中,而宣告式事務則是通過配置檔案或者註解進行操作。
在spring中有宣告式事務的概念,通過和hibernate類似框架的整合,可以很好的完成宣告式事務。
其實,不論在spring中有幾種配置hibernate事務的方法,都逃不出一下幾條:
1.配置sessionfactory
2.配置事務容器
3.配置事務規則
4.配置事務入口
後面一共為大家提供4種配置hibernate事務的方法。
首先說下配置sessionfactory,配置sessionfactory有兩種方式,一種是通過配置hibernate.cfg.xml檔案的位置來配置sessionfactory,另一種就是在spring配置檔案中,手動配置資料來源。
下面是兩種配置sessionfactory的方式(第二種配置需要額外引入兩個包:commons-dbcp、commons-pool)[/size]
update
第一種方式,利用tx標籤配置事務
第二種,用**進行配置
propagation_required,-exception
propagation_required,+myexception
propagation_required
readonly
第三種,利用***
propagation_required,-exception
propagation_required,+myexception
propagation_required
readonly
transactioninterceptor
*dao
第四種,利用註解。
首先,在配置檔案中寫入下面語句,開啟註解功能
然後用@transactional對類或者方法進行標記,如果標記到類上,那麼次類中所有方法都進行事務回滾處理,在類中定義transactional的時候,它有propagation、rollbackfor、norollbackfor等屬性,此屬性是用來定義事務規則,而定義到哪這個就是事務入口。
縱觀以上四種在spring中配置hibernate事務的方法,其核心都是一樣的,不同的只是實現的方式而已。所以看到這,這篇博文中你只需要記住4句話,就可以輕鬆理解在spring中配置hibernate事務的核心:
MyEclipse中刪除對Hibernate的支援
在myeclipse新增hibernate容易,刪除難,因為myeclipse中沒有刪除hibernate的功能鍵。但如果我們需要重新生成hibernate時,必須先徹底刪除hibernate支援。下面是手工刪除hibernate支援的方法 1.把專案根目錄下檔案.myhibernatedata刪除...
移除myeclipse中對hibernate的支援
在使用hibernate框架進行開發時可能會遇到配置錯誤或者需要刪除hibernate支援的情況。下面就說一下如何徹底移除專案的hibernate支援。移除後就能重新新增hibernate支援,重新配置了。1.找到你的專案的目錄 2.刪除.myhibernatedata檔案 3.找到.project...
Hibernate一級快取 Hibernate
1.session級別的快取,同session繫結,生命週期和session相同,當session銷毀,它也清除。管理以及快取的方法有clear evict clear清除session快取,evict將某個物件清除快取,相當於成為游離態detached。2.是實體級別的快取,只有在查詢物件級別的時...