Java JPA:我应该使用orm.xml清理我的实体类吗?
我目前只使用JPA注释,但我真的不喜欢用太多与行为无关的ORM细节污染我的实体类(例如表名、id生成策略、连接列…) 我看到了这一点(粉红色的),但我还没有看到任何其他实现推荐这一点,而且JPA似乎没有将注释分为这两组(我认为JDO是这样) 有人以这种方式使用annotations+orm.xml吗?您有什么经验Java JPA:我应该使用orm.xml清理我的实体类吗?,java,orm,jpa,Java,Orm,Jpa,我目前只使用JPA注释,但我真的不喜欢用太多与行为无关的ORM细节污染我的实体类(例如表名、id生成策略、连接列…) 我看到了这一点(粉红色的),但我还没有看到任何其他实现推荐这一点,而且JPA似乎没有将注释分为这两组(我认为JDO是这样) 有人以这种方式使用annotations+orm.xml吗?您有什么经验 它会从我的实体类中消除一些污染,还是我会遇到问题?我们在半定期的基础上遇到的最大问题是,如果您想使用注释以任何方式更改持久性映射,您需要重新编译和重新部署 使用orm.xml为您提供了
它会从我的实体类中消除一些污染,还是我会遇到问题?我们在半定期的基础上遇到的最大问题是,如果您想使用注释以任何方式更改持久性映射,您需要重新编译和重新部署 使用orm.xml为您提供了一定程度的抽象,可以使重新配置更加简单,并且在技术上可以使用相同的代码库实现(例如,您可以确保没有一行代码潜入您正在重新编译/重新部署的内容) 您可以同时使用注释和配置(这是我现在正在使用的环境)-使用函数类型持久性元数据(即外键、联接等-具有代码级表示的事物)注释类,同时使用无关信息(即表/列名)存储在配置文件中
当我们使用一种配置机制而不是另一种配置机制时,我们仍在尝试开发一些清晰的启发式方法,但我们正在实现这一目标 JPA实体仅仅是javabean(定义getter和setter的类),带有可选的支持代码(构造函数、hashCode、equals、命名查询、复制方法等等),即使包含了所有类型的JPA注释,也很难被认为受到了污染 在Java注释和xml之间拆分元数据的真正目的是简化和优化部署策略。您将承受两倍的价格: