jhipster - 无法获取实体的数据
问题描述
我使用 jhipster 生成 2 个实体 Employee 和 Department
和关系:
- 雇员.java
@ManyToOne
@JsonIgnoreProperties(value = "employees", allowSetters = true)
private Department department;
- 部门.java
@OneToMany(mappedBy = "department")
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
private Set<Employee> employees = new HashSet<>();
当我打电话给 api/employees 时,我有:
{
"id": 1,
"code": "FU_EMP_DTP726",
"name": "Concrete system",
"birthDate": "2020-11-30",
"address": "Granite frame",
"phone": "0152104977",
"salary": 65309.0,
"department": {
"id": 1,
"code": "FU_DE_787778",
"name": "Tools"
}
}
但是使用 api/departments ,我有:
{
"id": 1,
"code": "FU_DE_787778",
"name": "Tools",
"employees": null
}
我不知道为什么部门的员工为空
解决方案
在双向一对多关系的情况下,jhipster 不会得到所有 'child' 形式的“One”边,因为“N+1”问题。
为了您的目的,您需要修改生成的代码。使用 EntityGraph 修改存储库、添加“员工”设置到“DepartmentDTO”和 Mapper
推荐阅读
- amazon-workspaces - 更改计算机名称后工作区不正常
- python - 如何获取嵌套字典中的值的键
- laravel - 验证输入 throw a 此路由不支持 GET 方法。支持的方法:POST。错误
- swift - Swift:如何用单独的委托实例化一个新的视图控制器
- node.js - 带有节点的 Hyperledger 结构给了我你要求调用一个不存在的函数
- android - 相机意图完成后切换活动
- r-markdown - 在 Bookdown 中,当我尝试使用 Pandoc 编译 epub 书籍时,无法识别 `\textcolor`
- c++ - C++20 是否要求将源代码存储在文件中?
- java - 为什么 JavaFx SceneBuilder 找不到用户定义的类?
- python - 如何使用 Python 和 Flask 发送电子邮件