Hibernate注释来映射引用的列



在我的实体中,我有一个播放器对象映射如下

@JoinColumn(name = "player_id", referencedColumnName = "player_id")
@ManyToOne(optional = false)
private Player player;

但是现在如果我需要访问玩家的id,我需要通过玩家对象。相反,是否有一种方法可以将引用列直接映射到实体?

如果你需要在不加载对象的情况下获取播放器id,那么你可以这样做:

@JoinColumn(name = "player_id", referencedColumnName = "player_id")
@ManyToOne(optional = false)
private Player player;
@Column(name="player_id", insertable=false, updatable=false)
private Long playerId;

由于列player_id是重复映射,因此必须将其标记为只读(如上所述)。

最新更新