eclipse中从数据库生成hibernate实体类

http://www.blogjava.net/relax/archive/2009/07/27/288537.html

为什么写这篇BLOG,是因为经常有同事或网友问起我hiberante实体类的生成问题。所以下次再有人问我可以省一堆的话了,其实这个真的是很简单。

现在hibernate在项目中的应用是越来过广泛了。我是从hibernate开始支持注释语法后才开始研究它的。说实在的,原来的hibernate生成的一堆堆的XML文件看着就头晕,还不如自己写的SQL语句来的舒服,所以一直听朋友和同事介绍,可自己一直不屑用之。

可是现在有福了hibernate是JPA最常用的实现之一,而且hiberante自身也对注释语法进行了支持。现在再不用去看那一堆堆的XML映射了。而且eclipse还提供了从数据库直接生成EntityClass的工具。既然可以少写或不写SQL语句那合乐而为为呢。废话少说,开始做起来。

还是从我们开始项目的第一步说起,新建项目。一般我们用java做web项目都是File->New->DynamicWebProject,如下图:

然后会出现新建项目的对话框如图所示

然后点击Modify按钮后如图

将javapersistence选中,这样就为项目增加了JPA的特性,其它特性根据项目需要自行修改。点击OK后。点击几次NEXT(忽略的几步根据自身情况而定)到JPAFACET窗口,如下图:

因为咱们用的是hibernate列表中没有所以platform选择Generic,Type选择disablelibraryconfiguration,因为咱们把需要的jar文件直接放到WEB-INF下的lib目录中就可以了。所以不用配置。再下面的connection这个是必须要配置的要不我们怎么从数据库中生成啊。对不。

如果以前配置过连接直接选择就可以了,如果没有配置过点击addconnection.如下图:

选择要使用的数据库类型,然后下一步,如下图。其实这个类型也没啥作用只是个生成连接字符串的模版而以。

选择已有的驱动,如果没有怎么办,废话,当然是继续新增了。这块不详述了,点击driver后面第一个按钮,根据提示选择对应的jar文件即可。

做完上述操作点击Finish.回到JPAFacet窗口。选中Discoverannotatedclassesautomatically,把Createorm.xml钓掉。然后点Finish项目就建完了。

然后在项目文件夹上右键选择JPAtools->GenerateEntitiesfromTables.后如下图:

选择建好的connection如果没有connect就connect一下。就会如上图所示了(有时eclipse会有些小问题看不见表,可以重启一下试试,实在不行就直接建个JPAproject,生成实体后再拷到自己的项目中就可以了。)选中要生成实体的表,Next如下图:

上面是表之间的关系,如果可以做相应的修改(用的是ecipse3.5貌似eclipse3.4还没这个功能,eclipse越来越强了),再Next后如下图:

(这个好像也是eclipse3.5才加的)都能看明白吧。按照需要改改就可以了,这里不多啰嗦。再Next

后,如下图:

这是一些表的每个属性的调整,一般也不用调了。Finish就好了。

嘿嘿终于完成了。贴了这么多图,累死我了。不过为了大家能弄明白,还是图比文字更能说明情况,我辛苦点就辛苦点吧。。

看看源码中生成的java文件是不是你想要的,具体这些类怎么用。就不是这篇文章要说的问题了。如果大家有需要,我下回接着写。

二、http://www.blogjava.net/relax/archive/2005/03/01/1588.html

配置Middlegen-Hibernate和hibernate-extensions以产生hbm映射文件和POJO

先决条件:

已经安装了ant和MySQL数据库,数据库表已经建立。

1、从Hibernate官方网站下载Middlegen-Hibernate和hibernate-extensions,并解压。

2、配置Middlegen-Hibernate:

2.1配置数据库连接

假设连接的数据库是MySQL,在Middlegen-Hibernate-r5\config\database目录中有一个mysql.xml文件,是用来配置MySQL数据库的连接的。内容为:

<propertyname="database.script.file"value="${src.dir}/sql/${name}-mysql.sql"/>

<propertyname="database.driver.file"value="${lib.dir}/mysql-connector-java-3.0.15-ga-bin.jar"/>

<propertyname="database.driver.classpath"value="${database.driver.file}"/>

<propertyname="database.driver"value="org.gjt.mm.mysql.Driver"/>

<propertyname="database.url"value="jdbc:mysql://localhost/jboss"/>

<propertyname="database.userid"value="jboss"/>

<propertyname="database.password"value="jboss"/>

<propertyname="database.schema"value=""/>

<propertyname="database.catalog"value=""/>

<propertyname="jboss.datasource.mapping"value="mySQL"/>

将mysql-connector-java-3.0.15-ga-bin.jar拷贝到${lib.dir},也就是Middlegen-Hibernate-r5\lib目录。

修改配置文件中的数据库连接项目database.url、database.userid、database.userid使Middlegen-Hibernate可以找到数据库。

2.2配置Middlegen-Hibernate-r5的ant运行文件build.xml

<!DOCTYPEproject[

<!ENTITYdatabaseSYSTEM"file:./config/database/mysql.xml">

]>

指出使用的数据库配置文件。

<projectname="MiddlegenHibernate"default="all"basedir=".">

<propertyfile="${basedir}/build.properties"/>

<propertyname="name"value="hibernatesample"/>

指出你的应用名称。

<propertyname="build.gen-src.dir"value="C:/sample"/>

指出hbm的输出路径。

<hibernate

destination="${build.gen-src.dir}"

package="org.hibernate.sample"

genXDocletTags="false"

genIntergratedCompositeKeys="false"

javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"

/>

指出hbm所在的包的位置。

指出hbm.xml中是否需要XDocletTags。

3、运行Middlegen-Hibernate:

在Middlegen-Hibernate目录下运行ant,进入Middlegen-Hibernate的图形界面。可以设置表,和字段的特性。然后按Genarate,产生hbm.xml文件。

4、配置hibernate-extensions

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

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

setHIBERNATE_HOME=C:\java\hibernate-2.1.6

setCORELIB=%HIBERNATE_HOME%\lib

setLIB=..\lib

setPROPS=%HIBERNATE_HOME%\src

setCP=%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中运行hbm2javac:\sample\org\hibernate\sample\*.xml--output=c:\sample\

相关推荐