spring-boot - 关联实体 JPA 的最佳方式
问题描述
我在两个实体之间有多对一关系,我想知道是否有更好的选择来使用现有 ID 进行保存,例如,在下面的示例中,我应该在 json 中发送公司 ID 还是首先创建一个角色并使用 PUT使用公司 ID 更新角色。或者可能在控制器中找到公司实体,然后设置新的角色实体,然后保存。在这种情况下如何进行?
@Entity
data class Role(
val name: String = "",
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "company_id")
val company: Company,
val type: RoleType,
val description: String = ""
)
解决方案
如果company
角色字段是强制性的(非空),那么您需要创建第一个公司,以便您可以与 ID 或名称或任何外键链接。然后您首先创建一个公司,然后创建一个与之相关的角色。
{
"name" : "Role Name - 1",
"company" : 1, // or "Company-"
"type" : "Type - 1",
"description" : "This a test description"
}
推荐阅读
- javascript - 改变highchart散点图的点类型
- c# - 如何以编程方式登录 SharePoint Online 并获取 Web HTML?
- filter - 使用 Ironpython 脚本在表之间过滤和传递过滤器选择
- vbscript - 解密函数使用特殊字符给出错误结果
- javascript - 简单的 js forloop 只迭代一次
- flutter - 我可以在 Flutter 底部导航栏中的图标周围添加间距吗?
- javascript - 如何修改此正则表达式使其不匹配 * * *
- java - 哪个 Spring Annotation 与来自 MQTTCallBack 的 messageArrived 一起使用
- r - 创建新的数据框列
- facebook - Facebook 赞助消息的 Webhook 事件