2015-06-14 115 views
1

我想了解如何使用Hibernate从我的数据库中最好地生成和同步域模型POJO。现在,我设法建立过程如下:休眠域对象生成

  • 构建数据库
  • 有一个包含元素(每个表一个)一个hibernate.reveng.xml中文件
  • 使用JBoss的ER模式基于Eclipse的工具来运行代码生成的配置,我设定的目标包和位置,上述reveng.xml文件,并获取生成POJO的,映射文件和hibernate.cfg.xml文件

但是,这有很多的问题:

  1. 我无法将常用字段(ID,由...创建,修改等)映射到特定的基本实体。
  2. 我要管理很多的映射文件(似乎没有产生 单一个)
  3. 我不能生成basePojo和有我伸出一个,这样对POJO的我 修改不被重写下一代码 一代。
  4. 我不能微调生成的工件(映射,.CFG和POJO),他们都走进了相同的基本文件夹的输出位置

是它(POJO的按照我设置的包名放置)可能“告诉”生成器将公共表字段映射到相同的类(createdBy,ModifiedBy,ID等)?

我在质疑这种方法是否有意义呢?我应该手动管理我的POJO吗?我不介意,但一些帮助管理映射文件(.hbm.xml)会有很大帮助。

或者我应该找到一些方法去“代码优先”,即。写POJO的,然后生成架构?我已经习惯了.NET的实体框架了一下,我觉得很失去了什么是“正确”的方式来建立在Java持久层/休眠

谢谢

+0

有人喜欢第一次接近另一秒,没有人能告诉你哪种方法最好。在所有情况下,你都有很多工作要做。 –

回答

3

Telosys工具代码生成器可能是你的解决方案。

它使用现有的数据库为每个实体(数据库表)生成任何类型的源文件,通常是POJO,DTO,DAO,网页等... 当数据库模式更改时,您只需重新生成。

欲了解更多信息,请参阅网站:https://sites.google.com/site/telosystools/ 和教程:https://sites.google.com/site/telosystutorial/

所有的模板都是免费的,可定制的, 对Hibernate POJO可以使用JPA模板(https://github.com/telosys-tools/persistence-jpa-TT210-R2),必要时

适应他们