【问题标题】:hibernate using annotations or using hibernate configuration files使用注解或使用休眠配置文件休眠
【发布时间】:2010-09-02 05:56:25
【问题描述】:

我看过很多使用注解(基本上是hibernate注解或JPA注解)实现休眠的教程。有教程主要侧重于使用休眠配置文件(hbm.xml 文件)。根本不使用注释。

现在我有点困惑,哪种方法更好?

【问题讨论】:

    标签: xml hibernate orm jpa annotations


    【解决方案1】:

    我绝对更喜欢使用注释来定义我的映射元数据。实际上,注解是 Hibernate 开发人员推荐的方法。引用 More XML than code? 中的 Gavin King

    当然,Hibernate Annotations 早在 2005 年初就已经存在,人们不再有任何理由在 XML 中定义映射。

    优点:

    • 注释通常不那么冗长
    • 注释与代码一起使用,它们更易于维护 (IMO)

    缺点:

    • 更改元数据需要重新编译(如果这确实是个问题)

    换句话说,如果可以,请使用注释。如果您不能(您无法更改代码,例如在使用旧代码时),请使用 XML 映射。

    【讨论】:

      【解决方案2】:

      这取决于你!我不认为有更好的方法。两种解决方案都致力于同一件事,即帮助 Hibernate 了解数据库的结构。注释的优点是可以直接在您的 Entity Java 类文件中使用。

      曾有一段时间,XML 被视为定义配置信息的标准。从 Java 5 开始,最初位于这些 XML 文件中的许多信息现在使用注释直接存储在类中。例如,Spring 3.x 框架或 Java EE 6 现在使用注解。

      【讨论】:

        【解决方案3】:

        这取决于您的喜好。例如,我更喜欢注释类定义什么是主键、哪些值是自动生成的以及实体具有什么关系。我还使用了配置文件 persistence.xml,我在其中定义了 实体如何映射 到数据库。所以我将领域模型的程序员视图分离给了数据库工程师。

        【讨论】:

          【解决方案4】:

          我也更喜欢注释方法,因为我喜欢在一个地方查看类及其数据库配置。另一方面,这是使用配置文件的最大优势:您不需要接触 java 类。

          【讨论】:

            猜你喜欢
            • 2013-07-04
            • 1970-01-01
            • 2014-01-20
            • 2013-04-26
            • 1970-01-01
            • 1970-01-01
            • 2017-04-30
            • 1970-01-01
            相关资源
            最近更新 更多