Я новачок у весняній транзакції. Щось, що мені здалося дивним, напевно, я це правильно зрозумів.
Я хотів мати транзакційний рівень на рівні методу, і у мене є метод виклику в межах одного класу, і здається, що це не подобається, його потрібно викликати з окремого класу. Я не розумію, як це можливо.
Якщо у когось є ідея, як вирішити це питання, я дуже вдячний. Я б хотів використовувати той самий клас, щоб викликати метод анотованих транзакцій.
Ось код:
public class UserService {
@Transactional
public boolean addUser(String userName, String password) {
try {
// call DAO layer and adds to database.
} catch (Throwable e) {
TransactionAspectSupport.currentTransactionStatus()
.setRollbackOnly();
}
}
public boolean addUsers(List<User> users) {
for (User user : users) {
addUser(user.getUserName, user.getPassword);
}
}
}
TransactionTemplate
підході: stackoverflow.com/a/52989925/355438