在Hibernate3.3版本中,使用的字节码增强包默认是javassist了。而在3.2.6中默认使用的是cglib。要在3.3中更换为cglib,需要进行如下操作:
1.在classpath下,添加hibernate.properties文件,并添加如下一行
hibernate.bytecode.provider=cglib
这行属性配置就是指定字节码生成包使用cglib。注意:
1)一定要写成key=value形式,我按照Hibernate下载包中提供properties样板文件写成了hibernate.bytecode.provider cglib,死活不行。
2)不能通过在hibernate.cfg.xml文件中配置:<property name="hibernate.bytecode.provider">cglib</property>来更换,一定要在hibernate.properties中配置才起效。
2.添加cglib.jar到classpath中。Hibernate下载包中提供了cglib2.2.jar,但还需要添加cglib包依赖的asm3.1包。所以,干脆上cglib官网下载cglib-nodep-2.2.jar
Antlr 是一个基于 Java 开发的功能强大的语言识别工具,Antlr 以其简介的语法和高速的运行效率在这类工具中出类拔萃。当你需要开发一种领域语言时,语言可能像 Excel 中的公式一样复杂,也可能像本文中的例子一样简单(只有算术运算),这时你可以考虑使用 Antlr 来处理你的语言。
Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大。必须使用的jar包。
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j,直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包,Hibernate用它来读写配置文件。
JTA规范,当Hibernate使用JTA的时候需要。
发表评论(对文章涉及的知识点还有疑问,可以在这里留言,老高看到后会及时回复的。)