Class1{
public void parentMthod(List<Map<String, Object>> data){
for(Map map : data){
call1(map);
call2(map);
call2(map);
}
}
}
class2{
void call1(Map map){
//some code
}
void call2(Map map){
//some code
}
void call3(Map map){
//some code
}
}
Здесь call1()
и call2()
и call3()
должны быть согласованы. Как использовать управление транзакциями здесь? Должен ли я сделать родителя @Transaction(Propagation = required )
, а ребенка - @Transaction(Propagation = required_new )
? в цикле for предположим, что у меня есть 10 записей, и если 5-я запись имеет проблему, то только 5-я должна откатиться от дочернего вызова, но для других 9 записей данные должны быть зафиксированы в базе данных.