2016-08-13 60 views
3

嗨,我的问题不是技术问题。我想知道hibernate 5是否支持基于XML的实体映射。Hibernate 5是否支持基于XML的实体映射?

我的要求是象下面这样:

我想在新泽西州的Hibernate的后端。我的前端是Android应用程序。 我想让我的实体POJO保持在一个通用的项目中,这样它们将被应用程序和服务器共享。 Gson将序列化/反序列化两边。 但由于android应用程序不支持编译中的所有java库,我不希望我的普通(POJO)取决于某个库;在这种情况下,hibernate注释。所以我打算使用基于XML的配置。

+0

任何JPA提供者都必须支持XML配置。否则,它不是一个兼容的JPA实现。 –

回答

5

休眠5同时支持传统HBM映射以及太JPA XML映射。但是,HBM映射不再是映射实体的推荐方法。如new User Guide所示,所有示例均使用注释。

Hibernate特有注释提供的功能比HBM映射的情况更多。在Hibernate 6中,计划将扩展机制添加到JPA XML映射中,因此HBM映射将被弃用。

由于您正在迁移到Hibernate 5,因此从HBM迁移到注释也是一个好主意。

+0

我想保持我的POJO独立于所有的依赖关系,但是如果我使用注释,那么我将不得不依赖于Maven Hibernate注释。这就是为什么我想要HBM。如果有其他的方法,你可以告诉我一些其他的方法吗? –

+0

您只能依赖JPA注释。因此,javax.persistence是唯一的依赖项。但无论如何你需要它。 –

+0

但是android并没有使用JPA注释库。所以hbm.xml是我的最佳选择。 –

1

是,根据文件(这里作者使用映射注释推荐)说,XML映射仍然是可能的:docs

等等 - 你仍然可以我们*.hbm.xml对实体映射。

编辑:OFC我的意思是*的.hbm.xml

+0

我在问pojo映射,即entity.hbm.xml?我相信你的意思是你的答案。 –