有没有办法可以同时保留一个实体和它的地图?
这个例子,例如
public class Test {
private @Id @GeneratedValue(strategy = AUTO) Long id;
private String name;
@ElementCollection(targetClass = Long.class)
@CollectionTable(name = "test1_id")
@MapKeyColumn(name = "test_id")
@Column(name = "test")
private Map<Long, Long> map = new HashMap<>();
}
所以当我test.getMap().put(1L, 2L)
然后testRepository.save(test)
时,它会保存实体和地图吗?
答案 0 :(得分:1)
也许你应该重构你的实体。我会在另一个实体中转换地图,其中包含两个long类型的字段。之后,我会用@OneToMany关系链接这两个实体。