加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

应用middlegen同时生成.java和.hbm.xml文件

发布时间:2021-07-06 05:28:21 所属栏目:大数据 来源: https://blog.csdn.net/wts
导读:刚开始研究hibernate,第一次尝试使用middlegen根据数据库结构来生成.java和.hbm.xml文件,在网上查了一些文章,比较顺利启动middlegen主界面,按了【genarate】按钮之后,发现只生成了一些.hbm.xml文件(这些过程网上介绍很多,就不说了),并没有同时生成.j

       刚开始研究hibernate,第一次尝试使用middlegen根据数据库结构来生成.java和.hbm.xml文件,在网上查了一些文章,比较顺利启动middlegen主界面,按了【genarate】按钮之后,发现只生成了一些.hbm.xml文件(这些过程网上介绍很多,就不说了),并没有同时生成.java文件,继续上网查,但是找到的都是说使用hbm2java来生成,可是我分明看到middlegen的build.xml文件中有一个target,name就是hbm2java,应该是可以使用middlegen一起生成.java文件的。国内网站用baidu.com搜索了一下,没有找到答案告诉我如何应用middlegen生成.java文件。于是只好跑到www.hibernate.org上查,还好真找到了。贴在这里,希望对看到的人会有帮助。
主要就是将原来build.xml文件中<target name="hbm2java".......这一段替换一下,并进行简单修改。替换内容如下:

<target name="hbm2java"
    description="Generate .java from .hbm files." depends="init">
    <property name="hbm.dir" location="${build.gen-src.dir}/com/yourcompany/youproject/pojos/"/>
      
    <replaceregexp
  match='cascade="none"'   
  replace='cascade="all"'
  byline="true">
  <fileset dir="${hbm.dir}" includes="MapRequest.hbm.xml,MapRun.hbm.xml" /> 
    </replaceregexp>
    
    <mkdir dir="${build.gen-src.dir}"/>
    <taskdef
    name="hbm2java"
    classname="net.sf.hibernate.tool.hbm2java.Hbm2JavaTask"
    classpathref="lib.class.path"
    />
    
    <hbm2java output="${build.gen-src.dir}" classpathref="lib.class.path">
    <fileset dir="${build.gen-src.dir}">
    <include name="**/*.hbm.xml"/>
    </fileset>
    </hbm2java>
 </target>

然后还需要弄几个jar包到middlegen的lib中。包括:
hibernate2.jar
commons-lang-1.0.1.jar
jdom.jar
hibernate-tools.jar

这些包可以在middlegen扩展及hibernate中发现
然后用ant执行这个build.xml文件,命令行:
ant -file build.xml hbm2java

我这里效果还是很好的。 

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读