一尘不染

人们为什么继续使用xml映射文件而不是注释?

java

我已经观察到一个奇怪的事实(基于hibernate标记中的问题),人们仍在积极使用xml文件而不是使用注释来指定其ORM(Hibernate /JPA)映射。

在某些情况下,这是必需的:

  • 您正在使用提供的类,并且想要映射它们。
  • 您正在编写一个API,其域类可以在没有JPA提供程序的情况下使用,因此您不想强制JPA / Hibernate依赖关系。

但是,我认为这些情况并不常见。

我的假设是:

  • 人们习惯于使用xml文件并且不习惯/不想学习使用注释方法。
  • Java 1.5之前的版本被强加到项目上,与它无关
  • 人们不知道注释是xml映射的全功能替代。
  • 支持传统系统,因此更改方法被认为是有风险的
  • 人们担心将注释(元信息)与其类混合使用是错误的。

还有其他可能的解释吗?


阅读 199

收藏
2020-12-03

共1个答案

一尘不染

某些人认为域层和持久层是单独的关注点。使用纯XML方法会使两层保持尽可能松散的耦合。当域代码中嵌入了与持久性相关的代码时,使用注释会更紧密地将两层耦合在一起。

2020-12-03