28

我已经用Hibernate开始了一个新项目。Hibernate 注释是更好的选择还是 Hibernate XML 映射更好?

我已经将 Hibernate 与 XML 配置一起使用,但我不知道注释。

  1. 在进行基于注释的实现时是否有任何问题?
  2. 基于注释的应用程序维护是更容易还是更复杂?
  3. 哪一种更好(即注解或 XML 映射),哪一种被广泛使用?为什么?
  4. 如果我在不同级别使用不同的数据库,即生产或集成或开发级别,我是否需要更改代码?

注意:我不是在比较两种技术,而是想知道在应用程序中使用最新技术中的哪一种(即两种方式中的一种)。

4

3 回答 3

29

注释是新应用程序的更好选择,因为它使应用程序不受 XML 文件的影响。它的代码也更少,维护也很容易。它还有助于重构应用程序(使用 Eclipse/NetBeans 等 IDE),这是 XML 的问题,因为您需要手动更改它。

答案:

  1. 没问题,您可以使用最新的JSR 330 API(Java 的依赖注入),它有助于为 JSF 托管 bean(使用@Named而不是@managedbean)、Spring IoC层和 Hibernate 提供相同的注释,这样整个层您将只有一个注释概念而不是特定于框架的。

  2. 维护很容易,尤其是代码重构、更少或没有 XML 文件和新的学习。在 Hibernate 中使用基于 JPA 的注释。您可以在 google 中找到一些示例。

  3. 广泛使用基于 XML 的,因为它从一开始就存在,但是对于一个新的应用程序注释更好,它更成熟。

  4. 对于任何数据库的更改,注释或 XML 中的代码都将保持不变,只需要更改属性文件的值。

于 2011-09-29T10:22:55.627 回答
11

注释较新,是 JPA 应用程序的标准做法。

我发现它们比 XML 更易于使用,但这是一个品味和经验的问题。使用它们会让你

  • 学习新东西
  • 准备开始一个基于 JPA 的项目(可以使用另一个实现)

我从来没有遇到过需要 XML 的情况,因为注释不允许我做我想做的事。

于 2011-08-22T12:12:38.790 回答
1

在注释之前,只有一种方法可以做到这一点 - XML。如果您使用注释,您将把所有东西都放在一个地方,因此理解和维护它会更容易。

于 2011-08-22T12:12:48.833 回答