У меня есть следующие объекты:
@Entity
@Table(name = "USER_LABEL")
public class Label {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column
private long id;
@Column
private String caption;
@OneToMany(mappedBy = "label", fetch = FetchType.EAGER , cascade = CascadeType.ALL)
private Set<PartLabel> parts;
}
@Entity
@Table(name = "label_parts")
public class PartLabel {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "LABEL_PART_ID")
private long id;
@ManyToOne
@JoinColumn(name = "LABEL_ID", referencedColumnName = "LABEL_ID", nullable = false)
private Label label;
}
и репозиторий
public interface LabelRepository extends JpaRepository<Label, Long> {
}
Мой вопрос, почему в следующем фрагменте кода
набор «частей» в selectedLabel отображается правильно
, но набор «частей» в updatedLabel отображается на ноль, хотя база данных обновляется нормально
Label selectedLabel =labelRepository.findById(2L).get();
Label label = new Label();
label.setId(2L);
label.setCaption("any caption");
Label updatedLabel = labelRepository.saveAndFlush(label);