这是我的问题。我在控制器中调用了一个用@Transactional
注释的服务方法。如果已启用,则会发生ConstraintViolationException
。我想抓住它并将其放入我自己的异常中。现在,我遇到了可以捕获TransactionSystemException
的问题,但是已经记录了一个错误。我可以以某种方式防止这种情况吗?
public ResponseEntity<T> update(String id, T obj) {
try {
return getResponseEntity(service.update(id, obj));
} catch (TransactionSystemException ex) {
System.out.println("CATCHED");
throw new InternalErrorException();
}
}
在研究过程中,我发现可以禁用某些软件包(如
)的日志记录logging.level.org.springframework.dao.DataIntegrityViolationException=OFF
或
logging.level.org.hibernate.TransactionException=OFF
但这没有帮助,我不想完全禁用logging.level.org.hibernate=OFF
的日志记录。
答案 0 :(得分:1)