Java JPA:PrimaryKeyJoinColumn(…)与@JoinColumn(…,insertable=?,Updateable=?)相同吗?
如果没有可插入和可更新参数的Java JPA:PrimaryKeyJoinColumn(…)与@JoinColumn(…,insertable=?,Updateable=?)相同吗?,java,jpa,mapping,primary-key,jpa-2.0,Java,Jpa,Mapping,Primary Key,Jpa 2.0,如果没有可插入和可更新参数的@PrimaryKeyJoinColumn(…)与 @JoinColumn(..., insertable = false, updatable = false) 或 @JoinColumn(…,insertable=true,updateable=true) 在常规(非继承)关联上使用时?他们应该互换吗?可插入和可更新属性设置为什么?他们有什么打算吗?注意,我只针对两个(似乎)都实现的只读属性 我得到了相当不一致的映射异常与日食和冬眠 以下是@primarykey
@PrimaryKeyJoinColumn(…)
与
@JoinColumn(..., insertable = false, updatable = false)
或
@JoinColumn(…,insertable=true,updateable=true)
在常规(非继承)关联上使用时?他们应该互换吗?可插入和可更新属性设置为什么?他们有什么打算吗?注意,我只针对两个(似乎)都实现的只读属性
我得到了相当不一致的映射异常与日食和冬眠
以下是@primarykeyjoin列
JavaEE 5+6 Javadoc:
引述: 。。。并且它可以在一个OneTONE映射中使用,其中引用实体的主键用作引用实体的外键
是的,两者是等价的 注意:在JPA2.0中,您还可以将
@Id
添加到@OneToOne
映射中,并避免完全使用重复的基本Id属性
看
- 及
从页面中谢谢!:“因为现在同一外键列有两个映射,所以必须定义将写入数据库的映射(必须是基本映射),因此OneToOne或ManyToOne外键必须定义为只读。这是通过将JoinColumn属性insertable and Updateable设置为false来实现的,或者通过使用@PrimaryKeyJoinColumn而不是@JoinColumn来实现的。“这意味着我必须为EclipseLink提交错误报告,因为交换@JoinColumn。”(…,insertable=false,Updateable=false)与@PrimaryKeyJoinColumn(…)一起引发映射异常…第二个链接应该是:如果看第三个关于在不同版本的API中建立一对一关系的建议,看起来他们更不推荐使用
@PrimaryKeyJoinColumn
来创建关系