簡體   English   中英

如何強制Hibernate 3.3或3.5使用CGLib而不是Javassist?

[英]How to force Hibernate 3.3 or 3.5 to use CGLib instead of Javassist?

是否仍然可以強制使用Hibernate 3.3或3.5來使用CGLib而不是Javassist? 在我的屬性文件中,我設置了

hibernate.bytecode.provider = cglib

但這似乎並沒有這樣做。 有什么想法嗎?

似乎有些人沒有正確閱讀我的答案所以我會改寫:你的hibernate.properties看起來正確,屬性定義良好,它應該工作。 所以,對不起這個問題,但CGlib在類路徑上?

更新:剛剛測試過,它對我有用。 這是我在初始化時獲得的輸出:

15 [main] INFO org.hibernate.cfg.Environment - Hibernate 3.3.0.SP1
18 [main] INFO org.hibernate.cfg.Environment - loaded properties from resource hibernate.properties: {hibernate.bytecode.use_reflection_optimizer=false, hibernate.bytecode.provider=cglib}
20 [main] INFO org.hibernate.cfg.Environment - Bytecode provider name : cglib

PS:請注意, CGLIB支持最近已被棄用 (這並不意味着您將無法使用CGLIB,而是不再維護它的集成)。

是的,也放了

hibernate.properties 

進入一些源文件夾並記得在依賴項中使用hibermate-cglib-repack:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-cglib-repack</artifactId>
    <version>2.1_3</version>
</dependency> 

請記住,CGLIB庫大約4年沒有開發。 但是,您應該盡一切努力使您的代碼與Javassist一起使用,而Javassist仍在積極維護。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM