JPA 是否支持映射到 sql 视图?

2024-03-14

我目前正在使用 Eclipselink,但我知道现在大多数 JPA 实现已经相当标准化。是否有一种将 JPA 实体映射到视图的本机方法?我不想插入/更新,但问题实际上是如何处理 @Id 注释。 JPA 世界中的每个实体都必须有一个 ID 字段,但我创建的许多视图并不符合这一点。 JPA 中是否有对此的本机支持,或者我是否需要使用 hack 才能使其工作?我进行了很多搜索,但发现有关执行此操作的信息很少。


在使用时@Id具有直接支持类型的字段的注释并不是指定实体身份的唯一方法(请参阅@IdClass与多个@Id注释或@EmbeddedId with @Embedded),JPA 规范要求每个实体都有一个主键。

也就是说,您不需要实体即可将 JPA 与数据库视图一起使用。由于从 SQL 角度来看映射到视图与映射到表没有什么不同,因此您仍然可以使用本机查询(createNativeQuery on EntityManager) 来检索标量值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JPA 是否支持映射到 sql 视图? 的相关文章

随机推荐