Hibernate 如何在Spring Data JPA中更新@OnetoMany关系中的子实体
我有一个父类:Hibernate 如何在Spring Data JPA中更新@OnetoMany关系中的子实体,hibernate,jpa,spring-data-jpa,Hibernate,Jpa,Spring Data Jpa,我有一个父类: @Entity(name = "Master") @Table(name = "master") public class Master { @Id @GeneratedValue(strategy= GenerationType.IDENTITY) private Integer id; @Column(name = "name") private String name; @OneToMany(mappedBy = "
@Entity(name = "Master")
@Table(name = "master")
public class Master {
@Id
@GeneratedValue(strategy= GenerationType.IDENTITY)
private Integer id;
@Column(name = "name")
private String name;
@OneToMany(mappedBy = "master", cascade = CascadeType.ALL, fetch = FetchType.Lazy)
List<AdditionalAttribute> additionalAttributes = new ArrayList<>();
public void addAttributes(AdditionalAttribute attribute) {
additionalAttributes.add(attribute);
attribute.setFindings(this);
}
public void removeAttributes(AdditionalAttribute attribute) {
additionalAttributes.remove(attribute);
attribute.setFindings(null);
}
}
现在假设我已经在两个表中插入了数据,如:
Master
================
id. name
1. xyz
AdditionalAttribute
======================================================
id. attributeName. attributeValue. master_id
1 Acme test 1
2. loreal red 1
现在给定master\u id
,如何更新AdditionalAttribute
表中该id的attributeValue
我所做的是:
附加属性的列表
AdditionAttribute
对象这是更新的好方法吗?我们有更好的方法吗?如果只使用SQL查询更新实体会怎么样?
Master
================
id. name
1. xyz
AdditionalAttribute
======================================================
id. attributeName. attributeValue. master_id
1 Acme test 1
2. loreal red 1