Мне нужно сохранить список объектов таблицы с составным первичным ключом, я делаю, как показано ниже. Но я получаю ошибку, вызванную: java.sql.BatchUpdateException: ORA-00001: уникальное ограничение нарушено.
Но пункты в списке уникальны, что я делаю не так.
// Структура таблицы
@Entity
@Table(name="COMP_PRIMARY")
CompPrimaryObj{
@Id
@Column(name="KEY1")
private String key1;
@Id
@Column(name="KEY2")
private Long key2;
}
// код в моем слое обслуживания
List<CompPrimaryObj> compPrimaryObjList = new ArrayList<CompPrimaryObj>();
CompPrimaryObj obj1 = new CompPrimaryObj();
obj1.setKey1("key1");
obj1.setKey2(11111);
compPrimaryObjList.add(obj1);
CompPrimaryObj obj2 = new CompPrimaryObj();
obj2.setKey1("key2");
obj2.setKey2(222222);
compPrimaryObjList.add(obj2);
for(CompPrimaryObj compPrimaryObj:compPrimaryObjList){
em.persist(compPrimaryObj); // em stands for Entity manger instance
}