고유 제한 조건을 위반하면 javax.persistence.RollbackException
이 발생합니다. 하지만 RollbackException
을 던지려면 여러 가지 이유가있을 수 있습니다. 고유 한 제약 조건을 위반했음을 어떻게 알 수 있습니까?JPA 고유 제한 조건 위반을 처리하는 방법은 무엇입니까?
try {
repository.save(article);
}
catch(javax.persistence.RollbackException e) {
// how to find out the reason for the rollback exception?
}
... 'getCause(). getMessag()'를 구문 분석 하시겠습니까? – deamon
그게 무슨 예외에 따라 달라집니다. 그것이 'SQLException'이라면, 오류와 SQLStatus를 확인하십시오. 그러나 Spring과 같은 일부 프레임 워크는이를 좀 더 의미있는 것으로 해석합니다 ('DataIntegrityViolationException'). –