
hibernate问题:数据库中的一个外键字段可以在实体中用多个属性去映射么?
@Column(name="user_id")privateIntegeruserId;@ManyToOne(targetEntity=User.class,fetch=...
@Column(name = "user_id")
private Integer userId;
@ManyToOne(targetEntity=User.class,fetch = FetchType.LAZY)
@JoinColumn(name="user_id" ,nullable = true,insertable = false,updatable = false)
private User user;
--------------
这样映射对吗?user_id为外键 展开
private Integer userId;
@ManyToOne(targetEntity=User.class,fetch = FetchType.LAZY)
@JoinColumn(name="user_id" ,nullable = true,insertable = false,updatable = false)
private User user;
--------------
这样映射对吗?user_id为外键 展开
2个回答
展开全部
你好,这样是可以的,和你写的代码一样,如果有两个属性同时映射到一个列,那么其中一个属性就必须设置为insert=false,update=false,我觉得你代码这样设计,最好是把userId设置为insert=false,update=false,而让hibernate去管理user的关系。还有,这个根本没有违反什么约束,只是说这种设计方法不算太好。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询