spring和hibernate註解整合

2021-05-25 07:39:32 字數 1394 閱讀 8913

最近在做多資料庫支援訪問,使用spring的配置方式,在 junit下測試沒有問題,但是啟動平台就載入不到實體jar包,spring配置檔案如下:

cn.ac.iscas.core.entity

...

為何在junit下沒有問題,但在平台啟動環境下就是不行,換用實體工具的annotationfactory試驗,

bean id="sessionfactory" class="cn.ac.intec.entity.orm.annotationfactory">       

cn.ac.iscas.core.doors

...

結果還是無法載入類包,資料庫中無法自動建立表。

無奈之下,檢視實體工具源**,結果發現

annotationfactory是我們自己的實現,重寫了

cn.ac.iscas.core.doors.module

cn.ac.iscas.core.doors.basecompare

cn.ac.iscas.core.doors.baseline

cn.ac.iscas.core.doors.baselinepk

cn.ac.iscas.core.doors.enumerationdata

cn.ac.iscas.core.doors.modreqproperty

cn.ac.iscas.core.doors.modulereqstat

cn.ac.iscas.core.doors.property

cn.ac.iscas.core.doors.reqinfo

...

再次啟動平台,一切問題都解決了~~~

浪費了我一下午3小時+早晨1小時啊

總結:spring2.0自帶的annotationsessionfactorybean不好用,用 annotatedclasses可以解決問題,但只適合class較少的情況,如果class比較多,還是自己實現 annotationsessionfactorybean的子類,自己去遍歷annotatedclass比較好。

另:spring 2.5.6中,增加了< property  name ="packagestoscan"  value ="com.**.bo" /> , 總算是解決了自動掃瞄類包的問題,相關資料請參考:

《spring 2.5.6新特性之packagestoscan》

《spring下使用 hibenrate annotation》 

Spring 學習筆記整合 Hibernate

spring和hibernate處於不同的層次,spring關心的是業務邏輯之間的組合關係,spring提供了對他們的強大的管理能力,而hibernate完成了or的對映,使開發人員不用再去關心sql語句,直接與物件打交道。spring提供了對hibernate的sessionfactory的整合功...

Spring對JDBC及hibernate的支援

spring對jdbc及hibernate的支援 木馬網咖 一 作用 1.定義 spring的dao不是新發明一種技術,而是對原來技術的一種封裝,定義了一套 簡單實用的api 2.使用dao的好處 降低了業務邏輯層和具體的持久層技術 3.spring對dao的支援,定義了一套完善的異常類 1 執行時...

Hibernate框架1 Hibernate入門

hibernate是目前最流行的orm框架。當我們採用orm框架之後,應用程式不再直接訪問底層資料庫,而是以物件導向的方式來操作持久化物件 例如建立 刪除等 而orm框架則將這些物件導向的操作轉化成底層的sql操作。orm用最直白的話來說就是 一大堆的類庫,我們用物件導向的方式來呼叫,它幫我們翻譯為...