Java,代码生成和持久性框架

时间:2009-04-18 20:15:48

标签: java database persistence orm

是否有任何Java代码生成持久性框架? 首先是“数据库优先”而不是对象模型的东西? 我知道这可能是Java世界中的异端,我只想知道是否存在这样的框架。

这些天我更像是一个.NET人。因此,想到.NET Tiers或CSLA等.NET端工具。

8 个答案:

答案 0 :(得分:3)

当然,hibernate和netbeans可以对数据库进行逆向工程。你可能想看看:

  • Hibernate Tools;网站维护
  • netbeans,使用最新版本的netbeans,您可以从JDBC连接创建JPA实体

我的2美分。

答案 1 :(得分:3)

Apache Cayenne ORM框架能够对数据库进行逆向工程。请参阅here

答案 2 :(得分:3)

我开发jOOQ以完全符合您的需求 - 所以不要担心异端: - )

查看examples pagearticle on dzone,了解我创建此类框架的动机。主要优点是:

  • 它生成源代码
  • 通过在Java中提供类似SQL的DSL
  • ,它与SQL保持接近
  • 它支持轻松访问特定于供应商的功能,例如UDT,存储过程
  • 它支持所有高级SQL功能,例如UNION,嵌套SELECT,别名等

请注意,jOOQ NOT 实际上是OR-mapper。它侧重于您的RDBMS中的关系数据模型,并没有为您提供创建自定义面向对象的域模型的可能性,如Hibernate或JPA。这正是您自己提到的原因:Something that is "database first" rather than object model first

答案 3 :(得分:2)

Checkout EclipseLink项目(eclipse的插件),你可以generate来自数据库表的JPA模型

答案 4 :(得分:2)

DB Importer是一个Eclipse插件,可以从数据库生成JPA类。

免责声明:我是DB Importer的创建者。

答案 5 :(得分:2)

Telosys Tools是一个免费的 数据库"代码生成器

请参阅:https://sites.google.com/site/telosystools/

它是一个Eclipse插件,必要时可以自定义模板

它可以生成持久层(JPA),也可以生成CRUD屏幕 (教程在这里:https://sites.google.com/site/telosystutorial/

答案 6 :(得分:1)

许多基于Java的持久性工具包括基于现有模式生成代码的工具。 Netbeans将生成JPA(如果需要,包括Session bean外观)。同样,JBoss Tools for Eclipse将根据现有模式为您生成Hibernate JavaBeans。

答案 7 :(得分:1)

我会推荐HiberObjects。它是一个Eclipse插件,可用于建模持久对象或对现有数据库进行反向工程。它让你设置unit tests的方式真的很棒。您还可以修改实例DAO类的生成方式:只需修改Groovy脚本,然后重新生成所有DAO类。我遇到了一些错误,但它背后的人已经非常敏感,并在短时间内发布了修复程序。可在Eclipse Plugin Central找到说明和用户评分/评论。