今天复习hibernate的相关知识,突然感觉实体类很多,配置文件超级麻烦(为什么不用反转?因为现在有人不是从数据库层开始做设计,所以正向的配置也要熟悉),出于偷懒的心理,我找了找有没有什么方法可以解决这个问题!哈哈,被我找到了,使用ant和xdoclet生成即可。但是网络上的资源比较散,对于初学者有点难!现在我把我的详细做法记录如下,供大家参考!
准备:
1:下载ant,地址:http://ant.apache.org/bindownload.cgi 解压到任意位置
2:下载xdoclet插件 地址:http://xdoclet.codehaus.org/ 同样解压
下面开始配置ant
1:环境变量path的配置,添加ant的bin,我的是 E:\ant-1.8.4\bin 注意分号间隔(图1)。
2:环境变量ANT_HOME配置,新建变量名称ANT_HOME,值是ant的根目录,E:\ant-1.8.4(图2)。
3:如果java_home没有设置,那么也设置下,jdk的安装路径(图3)。
检验配置是否正确:dos命令行下,输入ant,提示找不到一个xml文件,那么就对了!其他的命令自行上度娘!
下面打开IDE,先前用的myeclipse8.6的有点问题!致使我纠结了半天!果断换了6.5的进行开发。
完工的工程目录结构(图4).
新建web项目,写好一个简单的实体类,我写的Student
package com.huadun.dto; /** * * @author huadunsoft.gaokai * 2013.03.07 */ public class Student { private String ID; private String Name; private String Sex; public Student(String id, String name, String sex) { super(); ID = id; Name = name; Sex = sex; } public Student() { super(); // TODO Auto-generated constructor stub } public String getID() { return ID; } public void setID(String id) { ID = id; } public String getName() { return Name; } public void setName(String name) { Name = name; } public String getSex() { return Sex; } public void setSex(String sex) { Sex = sex; } }
接下来右键工程名称Export----》ant buildfiles---》next---->finish-->ok。删除里面的代码,只留下这么多:
<?xml version="1.0" encoding="UTF-8"?> <!-- WARNING: Eclipse auto-generated file. Any modifications will be overwritten. To include a user specific buildfile here, simply create one in the same directory with the processing instruction <?eclipse.ant.import?> as the first entry and export the buildfile again. --> <project basedir="." default="build" name="Ant"> </project>
下面像其中添加必要的代码:
<?xml version="1.0" encoding="UTF-8"?> <!-- WARNING: Eclipse auto-generated file. Any modifications will be overwritten. To include a user specific buildfile here, simply create one in the same directory with the processing instruction <?eclipse.ant.import?> as the first entry and export the buildfile again. --> <project basedir="." default="buildhibernatecfgxml" name="Ant"> <property name="src.dir" value="${basedir}/src"/> <!--指定目录--> <property name="xdoclet.home" value="E:/ant-1.8.4/xdoclet103"/> <!--指定xdoclet插件的目录,注意分隔符用的是/--> <!-- Build classpath --> <!-- 路径定义 --> <path id="xdoclet.task.classpath"> <fileset dir="${xdoclet.home}/lib"> <include name="**/*.jar"/> </fileset> <fileset dir="${xdoclet.home}/plugins"> <include name="**/*.jar"/> </fileset> </path> <!--定义类的包路径--> <taskdef name="xdoclet" classname="org.xdoclet.ant.XDocletTask" classpathref="xdoclet.task.classpath" /> <!--生成hibernate.cfg.xml destdir指定文件的生成路径--> <target name="buildhibernatecfgxml"> <xdoclet> <fileset dir="${src.dir}/com/huadun/dto"> <include name="**/*.java"/> </fileset> <component classname="org.xdoclet.plugin.hibernate.HibernateConfigPlugin" destdir="${src.dir}" version="3.0" hbm2ddlauto="update" jdbcurl="jdbc:jtds:sqlserver://localhost:1433;instance=SQLDB;DatabaseName=test" jdbcdriver="net.sourceforge.jtds.jdbc.Driver" jdbcusername="sa" jdbcpassword="123456" dialect="org.hibernate.dialect.MySQLDialect" showsql="true" /> </xdoclet> </target> <target name="生成hibernate映射文件xxx.hbm.xml"> <xdoclet> <fileset dir="${src.dir}/com/huadun/dto"> <include name="**/*.java"/> </fileset> <component classname="org.xdoclet.plugin.hibernate.HibernateMappingPlugin" version="3.0" destdir="${src.dir}" /> </xdoclet> </target> </project>
修改实体类:为其添加注释 :
主要是一些标签
package com.huadun.dto; /** * * @author huadunsoft.gaokai * 2013.03.07 * @hibernate.class table="Student" */ public class Student { private String ID; private String Name; private String Sex; public Student(String id, String name, String sex) { super(); ID = id; Name = name; Sex = sex; } public Student() { super(); // TODO Auto-generated constructor stub } /** * @hibernate.id * generator-class="native" */ public String getID() { return ID; } public void setID(String id) { ID = id; } /** *@hibernate.property */ public String getName() { return Name; } public void setName(String name) { Name = name; } /** *@hibernate.property */ public String getSex() { return Sex; } public void setSex(String sex) { Sex = sex; } }
接下来我们右键工程---》属性---》myeclipse--》xdoclet---》add standard 选择standard hibernate ok即可,如图5,6
此时生成配置文件xdoclet-build.xml,里面的内容不解释。到这里可以算是结束了,接下来只要运行build.xml就可以生成了,注意运行时右键build.xml-->run as 选第二个,否则只生成默认的配置文件,至此完成。
我会是优秀的90后!
相关推荐
在Java类中,我们只需要添加适当的Javadoc注释,Xdoclet就会根据这些注释生成对应的.hbm.xml映射文件和Hibernate配置文件。而Ant则负责编译源代码、运行Xdoclet以及执行其他构建任务。 具体步骤如下: 1. **设置...
XDoclet则是一个元数据注解处理器,它能够解析Java源代码中的特定注解,并自动生成相应的配置文件,如Hibernate的HBM文件。HBM文件是Hibernate用来映射Java类与数据库表之间关系的XML文件,它定义了对象-关系映射...
为了生成Hibernate配置文件,我们需要编写一个Ant脚本来调用Xdoclet。这里是一个简单的示例脚本: ```xml <property name="doclet.dir" value="target/xdoclet"/> ${src.dir}" includes="**/*.class"/> $...
XDoclet则在Javadoc注释的基础上,根据预设的模板自动生成Hibernate所需的配置文件和实体类,大大减少了手动编写这些文件的工作量。 在实际开发中,这个组合的使用可以显著提高开发效率,减少重复劳动,尤其是对于...
XDoclet是基于Javadoc的元数据处理工具,它通过读取Java源代码中的特定注解,自动生成各种配置文件,包括Hibernate的.hbm.xml映射文件、EJB组件的部署描述符等。使用XDoclet,开发者无需手动创建和维护这些配置文件...
XDoclet 是一款强大的Java注解处理工具,它允许开发者在Java源代码中添加元数据,这些元数据可以用来自动生成各种配置文件,包括Hibernate的映射文件(hbm.xml)。这种方式极大地提高了开发效率,避免了手动创建和...
**XDoclet** 是一个文档生成和代码生成工具,它可以自动根据Java源代码中的特定注解生成各种配置文件,如Hibernate的映射文件、EJB的部署描述符等。这减少了手动维护配置文件的工作量,提高了开发效率。 **Ant** 是...
请把这个文件解压后方到一个盘下面.在build.xml中的 <property name="xdoclet.home" value="D:/jarpackage/xdoclet-plugins-1.0.3"/> 指出这个文件存放的位置....在构建域对象的时候一定要指明在配置文件中的配置信息..
4. 生成配置文件:使用 Xdoclet 生成对应的配置文件,如 Hibernate 映射文件。 Xdoclet 的优点 Xdoclet 有以下优点: * 自动生成配置文件:Xdoclet 可以根据 Java 代码生成对应的配置文件,减少手动编写配置文件...
Xdoclet则是Java中用于自动生成代码和部署描述符的工具,它通过解析源代码中的特定注解(Javadoc标签),生成对应的Struts配置文件、Hibernate映射文件或EJB组件代码。这大大减少了手动编写这些文件的工作量,使...
XDoclet可以通过Ant插件在编译Java源代码时自动运行,读取源代码中的注解,并根据这些注解生成相应的配置文件。在`build.xml`文件中,你需要配置一个`xdoclet-taskdef`任务来引入XDoclet,然后定义一个`xdoclet`任务...
而Xdoclet则是用于自动生成Java源代码和配置文件的工具,它能够根据注释自动创建Hibernate所需的XML配置文件,比如`hibernate.cfg.xml`和`*.hbm.xml`。在早期,Xdoclet广泛用于简化Hibernate项目,避免手动编写大量...
通过在Java类中添加特殊的Javadoc标签,XDoclet可以读取这些信息并生成相应的配置文件,如Web应用的web.xml、EJB的ejb-jar.xml或者Hibernate的hibernate.cfg.xml和.hbm.xml文件。这种方式既保留了代码的可读性,又...
xdoclet 配置文件,可以自动建立hibernate配置文件和mapping文件
XDoclet是一款强大的Java代码生成工具,它通过解析Java源代码中的特定注解(annotations),自动生成各种元数据,如EJB组件接口、Hibernate映射文件、Struts配置文件等。XDoclet 1.2是该工具的一个版本,带来了许多...
Xdoclet是一个强大的Javadoc扩展工具,它通过解析Java源代码中的特定注解,生成各种配置文件,包括Hibernate的映射文件、EJB的部署描述符等。开发者只需在Java类或属性上添加相应的Javadoc注解,Xdoclet就会自动读取...
XDoclet是一款强大的Java文档生成工具,它允许开发者通过在Java源代码中的Javadoc注释中添加特定的标签,自动生成各种元数据,如EJB接口、Hibernate映射文件、Struts配置文件等。这个API是开发者在实际项目中提升...
XDoclet是一款强大的Java文档注解处理器,它能够根据Java源代码中的特定注解自动生成各种配置文件,比如Hibernate的映射文件(*.hbm.xml)、EJB的部署描述符等。在Java持久化编程中,XDoclet的使用极大地提高了开发...
然后,你可以通过集成 Xdoclet 到构建工具(如 Ant 或 Maven)中来自动执行注释解析和配置文件生成。在 Ant 中,你可以创建一个任务,如 `xdocletTask`,并指定要处理的 Java 源文件路径以及生成的目标目录。 以下...
总之,Xdoclet提供了一种方便的方式来将Java源代码中的注释转换为实际的配置文件,极大地简化了开发过程中的配置管理工作,尤其是在处理持久化框架如Hibernate时。通过集成到构建工具中,开发者可以自动化地生成和...