middlegen+hibernate自动生成mapping files和java文件

来源:百度文库 编辑:神马文学网 时间:2024/04/29 05:35:41
middlegen+hibernate自动生成mapping files和java文件
www.aspsky.net  2005-5-18  动网先锋


近来由于要做一个项目,需要用到middlegen+hibernate自动生成mapping files和java文件,但是到网上去搜索搜索却没找到什么详细的讲解,自己摸索了摸索,现在把经验写在这里,以免以后我给忘了,也顺便给大家提供点方便。需要的工具有ant,jdk1.4以上,hibernate,middlegen。大家可以从网上进行下载,下面的地址是一个middlegen的例子。
http://sourceforge.net/project/showfiles.php?group_id=40712

首先打开解压这个例子,发现里面有一个build.xml文件,用文件编辑器打开它,看到第一句如下:
这句话定义了从不同种类数据库的配置文件里面选取一种。这个例子选取的是它自带的hsqldb数据库,因此我们就需要选取相应的文件,这些文件都放在/config/databse/里面,由于我用的是sqlserver数据,因此我就改成mssql.xml就行了,然后我们要做的就是要配置mssql.xml文件和build.properties文件

配置hibernate-extensions

在hibernate-extensions-2.1.2\tools\bin目录有一个setenv.bat文件,改变其内容为:

set JDBC_DRIVER=C:\java\Middlegen-Hibernate-r5\lib\mysql-connector-java-3.0.15-ga-bin.jar

set HIBERNATE_HOME=C:\java\hibernate-2.1.6


set CORELIB=%HIBERNATE_HOME%\lib

set LIB=..\lib

set PROPS=%HIBERNATE_HOME%\src

set CP=%JDBC_DRIVER%;%PROPS%;%HIBERNATE_HOME%\hibernate2.jar;%CORELIB%\commons-logging-1.0.4.jar;%CORELIB%\commons-collections-2.1.1.jar;%CORELIB%\commons-lang-1.0.1.jar;%CORELIB%\cglib-full-2.0.2.jar;%CORELIB%\dom4j-1.4.jar;%CORELIB%\odmg-3.0.jar;%CORELIB%\xml-apis.jar;%CORELIB%\xerces-2.4.0.jar;%CORELIB%\xalan-2.4.0.jar;%LIB%\jdom.jar;%LIB%\..\hibernate-tools.jar

注意红色字体提示的均是路径和JAR文件名,一定要正确。

5、运行hibernate-extensions,根据hbm.xml产生POJO文件

在DOS中运行hbm2java c:\sample\org\hibernate\sample\*.xml --output=c:\sample\


//更正:
hibernate-extensions使用很简单,主要是配置classpath

rem 设置数据库的驱动

set JDBC_DRIVER=%ORACLE_HOME%\jdbc\lib\classes12.jar

rem 设置HibernateTools_Home 把Hibernate工具所用到了库加入classpath中
set HIBERNATETOOLS_HOME=F:\Hibernate\Dev\hibernate-extensions-2.1.3\tools

rem 加入Hibernate的库 和 他编译后生成的文件

set CORELIB=%HIBERNATE_HOME%\lib
set LIB=%HIBERNATETOOLS_HOME%\lib
set PROPS=%HIBERNATE_HOME%\src

set CP=%CLASSPATH%;%JDBC_DRIVER%;%PROPS%;%HIBERNATE_HOME%\hibernate2.jar;%CORELIB%\commons-logging-1.0.4.jar;%CORELIB%\commons-lang-1.0.1.jar;%CORELIB%\cglib-full-2.0.2.jar;%CORELIB%\dom4j-1.4.jar;%CORELIB%\odmg-3.0.jar;%CORELIB%\xml-apis.jar;%CORELIB%\xerces-2.4.0.jar;%CORELIB%\xalan-2.4.0.jar;%LIB%\jdom.jar;%LIB%\velocity-1.3.1.jar;%CORELIB%\commons-collections-2.1.1.jar;%HIBERNATETOOLS_HOME%\hibernate-tools.jar

注意:查看CP中设置的文件在Hibernate/lib文件下是否存在,由于版本更新 ,有些库版本已经改变。

若遇到Java.lang.NoClassDefFoundError :文件名 ,则说明classpath设置有问题