Транзакция не работает с JPA saveAll - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь сохранить список объектов сущностей. Вот мой метод, который определен в классе Service:

@Transactional
public void creteEmployee(List<Employee> employeeList) {
    employeeRepository.saveAll(employeeList);
}

А вот мой репозиторий JPA:

public interface EmployeeRepository extends PagingAndSortingRepository<Employee, Long> {
    Page<Employee> findByCompany(Pageable pageable, Company company);
}

У меня есть уникальное ограничение, определенное в моей сущности. Если какой-либо элемент из employeeList нарушает уникальное ограничение, я ожидаю, что никто из employeeList не будет сохранен. К сожалению, все элементы, кроме проблемного c один, сохранены, а также DataIntegrityViolationException поднят. Что нужно сделать, чтобы сделать это атоми c?

...