我有一个带有Hibernate 5(1.5.7.RELEASE
)和JPA的Spring Boot应用程序(版本5.2.12.Final
)。我在服务中执行了保存操作,该操作失败,错误为javax.validation.ConstraintViolationException
。但是,我看到数据已保存在我的数据库中,尽管事实并非如此。我的数据库是SQL Server,代码如下:
@Transactional(rollbackFor = Exception.class)
public Offer saveOfferInDB(Offer offer) {
try {
Offer savedOffer = offerRepository.save(offer);
offerRepository.flush();
return savedOffer;
} catch (Exception e) {
LOG.error("Could not Save offer.", e);
throw new DataNotSavedException(true);
}
}
DataNotSavedException
类是扩展RuntimeException
的自定义异常。为什么不执行任何回滚的任何想法?