利用HibernateTools从数据库表生成带注解的POJO

Posted wizardycc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用HibernateTools从数据库表生成带注解的POJO相关的知识,希望对你有一定的参考价值。

引用:http://www.cnblogs.com/mingziday/p/4475124.html

 

在SSH框架中,如果先设计好了数据库,那么下一步就需要从数据库Table生成实体java类和hbm.xml配置文件。在最新的开发框架中,已经支持使用注解,从而避免了繁琐的hbm.xml配置,而且我们可以借助HibernateTools工具完成从Table到实体Java类的转换。

1、首先把HibernateTools插件安装到Eclipse上

打开Eclispe,按照如下操作完成插件安装

Help > Install New Software… > Work with:
http://download.jboss.org/jbosstools/updates/stable/luna/

2、插件安装成功后,先新建一个hibernate.cfg.xml配置文件,该文件配置了一些链接数据库的设定,可以帮助Eclipse链接你的数据库表

点击Add Configuration

在弹出的配置框中选择Project、Hibernate版本、点击Configuraton file后面的setup

在Configuration file setup的界面中配置你的数据库链接参数,点击finish即可生成配置文件

你可以用修改生成的配置文件hibernate.cfg.xml,用图形化的形式,比如可以添加一些属性

此时,你的Eclipse应该可以链接上数据库表了,先看一下吧

 

3、配置文件生成之后,也就是说可以链接上数据库了,下面就能够从数据库Table生成我们想要的Java文件了

点击run->hibernate code generation

在界面中选择输出路径、Package路径等,此时Console Configuration默认为我们在上一步中生成的配置。

Export标签中设置了我们要输出那些文件

reveng.xml后面点击setup,设置你要输出那些表,例如我们这里只输出student表(该步骤完成后会生成配置文件hibernate.reveng.xml)

最后点击finish,大功告成,生成的文件包括TStudentHome.java、Tstudent.java

Tstudent.java 就是我们要生成的带注解的实体类。

复制代码
/**
 * TStudent generated by hbm2java
 */
@Entity
@Table(name = "t_student", catalog = "happycardata")
public class TStudent implements java.io.Serializable {

    private Integer stuId;
    private String stuNetname;
    private String stuPassword;
    private String stuRealname;
    private String stuEmail;
    private String stuImg;
    private String stuInfo;
.........
}
复制代码

总体步骤不是太麻烦,如果表比较多,可以节省不少开发工作量。在设计好表结构之后,可以一次性生成初级版本java文件,然后再在初级版本的java文件的基础上进行手动修改,而不是单纯依靠工具生成。毕竟手动修改可控性更强,也更符合开发者的意图。

参考文件:

http://www.tuicool.com/articles/7zq22q

http://blog.csdn.net/lisq037/article/details/9057907

以上是关于利用HibernateTools从数据库表生成带注解的POJO的主要内容,如果未能解决你的问题,请参考以下文章

HibernateTools实现pojo类 数据库schma mapping映射的相互转换 二

Eclipse中通过Hibernate Tools插件实现从数据库逆向生成Hibernate带注解的实体类

Hibernate上传数据到数据库,从数据库读取数据到本地模板代码

org.omnifaces.VetoAnnotatedTypeExtension.processAnnotatedType(@Observes ProcessAnnotatedType) 接收所有带注

Hibernate 逆向工程未生成正确的域代码 STS

从0到1打造代码生成器数据库表生成Java实体类