从关系数据库的角度来看,这是一个集合。数据库不会保留顺序,并且使用a
List是没有意义的,它们的顺序是不确定的(除非使用所谓的 索引集合 )。
使用a
Set也具有很大的性能影响。
List使用Hibernate
时,
PersistentBag在下面使用具有某些可怕特征的集合。即:如果您添加新关系,它将首先删除所有现有关系,然后再将其重新插入并添加新关系。使用
Set它仅插入新记录。
第三件事-
List在一个实体中不能有多个,因为您将声名狼藉 ,无法同时获取多个bag 异常。
也可以看看:
19.5。了解馆藏表现
为什么Hibernate会“先删除所有内容然后重新插入”-并不奇怪



