Fak*_*kiR 5 java hibernate jpa joincolumn
我有两张桌子:
用户:
- user_id(主要)
- ip(唯一)
- ETC ..
服务到IP
- id(主要)
- 服务ID
- ip
- ETC ..
课堂上用户:
@OneToMany()
@JoinColumn(name = "ip", insertable = false, nullable = false, updatable = false)
public List<QPlanService> getPlanServices() {
return planServices;
}
Run Code Online (Sandbox Code Playgroud)
使用 MySQL 查询日志,我们得到类似的信息:
SELECT *
FROM services_users planservic0_
LEFT OUTER JOIN services qservice1_
ON planservic0_.service_id = qservice1_.id
WHERE planservic0_.ip = 777
Run Code Online (Sandbox Code Playgroud)
在 WHERE 条件下,使用“user_id”字段(默认字段是主键 - users.id)(user_id=777)。
如何指定我需要从用户实体获取“ip”字段的值,而不是“user_id”?
我将不胜感激任何帮助!
JoinColumn只会指定保存外键的列的名称,因此更改 joincolumn 的名称绝对没有帮助。
Hibernate 默认情况下将使用主键进行连接,如果您想覆盖它,您可以简单地referencedColumnName在关系中使用,但引用的列应该是唯一的
| 归档时间: |
|
| 查看次数: |
8244 次 |
| 最近记录: |