gpt4 book ai didi

java - Hibernate OneToOne 加入唯一但不是主键

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:22:28 26 4
gpt4 key购买 nike

我有两个表:

  1. users:

    • user_id (primary)

    • etc ..

  2. users_info

    • id (primary)

    • user_id (unique)

    • etc ..

我想在 user_id 字段上创建从 useruser_info 的一对一关系。请注意,它是唯一的但不是主要的。可以在 Hibernate 上完成吗?无论我在做什么,Hibernate 都会尝试使用 users_info.id 字段而不是 users_info.user_id 字段。

@OneToOne(mappedBy="user_id", cascade = {CascadeType.ALL}, fetch=FetchType.LAZY, optional=true)
@JoinColumn (name="user_id")
public UserInfo getUserInfo() { return userInfo; }
public void setUserInfo(UserInfo userInfo) { this.userInfo = userInfo; }
private UserInfo userInfo;

最佳答案

User 中你应该有:

@OneToOne(mappedBy="user", cascade = CascadeType.ALL, fetch=FetchType.LAZY, optional=true)
public UserInfo getUserInfo() { return userInfo; }

UserInfo 中:

@OneToOne
@JoinColumn(name="user_id")
public User getUser() { return user; }

看看here .这是一对一映射的第二个例子。

关于java - Hibernate OneToOne 加入唯一但不是主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11029590/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com