以前Hibernate的配置文件和映射文件都是手写,和model实体类是单独分开的,当实体类太多的时候不怎么好管理,在这种情况下,XDoclet2起到了很好的作用,它使用Annotation的方式直接将需要生成hbm.xml文件的元素写在实体类java文件的注释中,然后通过Ant自动生成实体类的Hibernate映射文件,好了,直接看程序吧。
首先是Ant和XDoclet2的下载:
apache-ant-1.7.1-bin.zip 下载地址:http://www.apache.org
xdoclet-plugins-dist-1.0.4-bin.zip 下载地址:http://xdoclet.codehaus.org/
第一步:Ant的使用先简单介绍一下吧,解压后,将解压目录设置到环境变量ANT_HOME(确保JAVA_HOME有效),然后在path中添加%ANT_HOME%\bin,这时在cmd中运行ant命令,如果不提示ant为无效命令,就说明Ant已经可以正常使用了!这个时候就可以写一个build.xml文件(参见ant的帮助文档),然后进入cmd,转至build.xml文件所在目录,直接运行ant命令就可以完成build.xml中定义的Task了。
第二步:在确保了Ant可用后,可以把Xdoclet2解压,然后在MyEclipse中new一个新的project,首先编写一个测试的model实体类,注意,在类和属性前的注释中加入Xdoclet的Annotation,如下:
第三步:在project根目录下新建一个build.xml文件,内容如下:
第四步:在MyEclipse中Window->showView->Ant,在Ant视图中添加build.xml,然后运行对应的Target("生成Hibernate配置文件","生成Hibernate映射文件"),搞定!刷新project,就可以看到生成的hibernate.cfg.xml 和User.hbm.xml 文件,感觉是不是方便很多呢,想象一下,把hbm放到实体类中,当类多的时候,无论实体类怎么变,只需要重新Ant一下就搞定了,再不用一个一个的改hbm.xml文件了。