【问题标题】:Is JPA/Hibernate better with Reverse Engineering or Forward Engineering逆向工程或正向工程是 JPA/Hibernate 更好吗
【发布时间】:2012-09-06 08:29:47
【问题描述】:

如果我们在项目中使用 JPA/Hibernate,我们可以从 DB 中获取 Generate the Entity 类有什么优势吗?,因为我有经验,如果我们按照这种方式进行很多返工,我们无法获得JPA/Hibernate 的优势,有很多我们可以使用的构建功能。那么当我们使用 JPA/Hibernate 时,谁能告诉我做正向工程和逆向工程的利弊?我个人的看法是,如果我们使用 JPA/Hibernate,我们应该使用正向工程

【问题讨论】:

    标签: hibernate reverse-engineering


    【解决方案1】:

    还有“中间”设计,这是迄今为止最好的选择当有一个选项时。当没有选择时,正向和逆向工程开始发挥作用;当您有一个已经存在的关系或域模型时。 “中间”设计同时构建关系模型和域模型,同时认识到它们在一起具有协同作用和相互阻碍,所有这些最好一起解决。

    话虽如此,从定义明确的关系模型执行逆向工程通常并不是一个巨大的障碍。在关系模型设计不佳的情况下(恕我直言),这种情况开始崩溃(并且您往往会看到很多“返工”)。

    【讨论】:

    • 谢谢史蒂夫,是的,我同意你的看法,是的,关系模型设计不佳可能是原因之一,因为我觉得用 jpa/hibernate 进行逆向工程有更多的缺点,这真的是可读性(创建具有所有字段的构造函数,注释映射在方法上)以及难以修改,我注意到生成的类中缺少一些选项(例如:没有“cascadeType”),如果我是,请纠正我错了谢谢
    • 既然你特别提到了......任何逆向工程工具如何能够根据数据库元数据确定级联类型?就构造函数而言,它还创建了无参数形式;如果你不喜欢某些构造函数形式,就不要使用它们,就这么简单。
    • 是的史蒂夫,我们可以远离那些构造函数。逆向工程工具无法理解 cascadeType 元数据,我之前不清楚。谢谢你帮我弄清楚,你是什么如果我们从一开始就开发一个系统,个人建议,因为我认为从实体类创建数据库总是更好。再次感谢您的回复
    • 我已经说过了。工作“中间”。开发你的领域/逻辑模型; (我认为对象在概念层面上对此非常有用。请注意,最好将其作为一个迭代过程来完成..
    猜你喜欢
    • 1970-01-01
    • 2012-03-15
    • 2017-06-23
    • 2016-06-18
    • 1970-01-01
    • 2018-08-03
    • 2015-09-27
    • 2015-02-11
    • 2010-12-15
    相关资源
    最近更新 更多