hibernate - 将一个实体映射到多个表
问题描述
请假设我们的数据库中有两个表:
人
id, firstname,lastname,titleid(是 fk 到 title.id)
标题
id,name
现在我们想要一个带有 jparepository 类的 spring boot 项目中的实体或 java 类:
人
id,firstname,lastname,titleid, titleName(可能是@transient?!)在我们的person实体中,字段id,firstname,lastname,titleid映射到person表,titleName映射到title表。
第一个问题:我们需要使用联合查询(在一个查询中)加载我们的实体,但所有保存、删除查询都像往常一样针对人员表。这怎么可能? 第二个问题是我们如何编写一个命名查询并在我们的 jparepository 中使用它来仅加载 id 和 firstname 而忽略其他字段?
谢谢
解决方案
使用@OneToOne 映射
所以在你的个人类中使用
@OneToOne 私有 Title 标题;
推荐阅读
- linux - 通过二进制或 pip install 安装 docker-compose 有什么区别
- sql - 如何仅获取解析到另一个字段的字段中的数字?
- jql - 在某个测试集中查找包含测试的测试执行
- laravel - laravel websocket客户端不起作用没有错误
- css - 无法使用 Rails 6 在生产中加载资产资源(css + js)
- c# - 为什么我不能写这个变量的值 c#
- amazon-web-services - 从 lambda 函数触发 Appsync 突变
- html - 如何自定义 cdk 覆盖窗格?
- c# - 如何在 C# 中等待 IEnumerator 函数的完整执行?
- python - 如何在 Tkinter 中保存信息?