这是controller
@Autowired
PlanMgrService planMgrService;
@RequestMapping(value = "/test",method = RequestMethod.POST)
@ApiOperation(value = "测试", notes = "测试")
@Transactional(rollbackFor = {RuntimeException.class, Error.class})
public void test() {
try {
planMgrService.doInsert() ;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
这是service 重复主键会引发异常
@Transactional(rollbackFor = {Exception.class, Error.class},value="defaultTransactionManager")
public void doInsert() throws Exception{
String sql1 = "insert into td_app_ref_user (user_id, app_user_id) values (?,?)";
try {
DBHelper.insert(sql1, "3831","3831");
DBHelper.insert(sql1, "3831","3831");
} catch (Exception e) {
throw e;
}
}
引入的这个依赖
org.springframework.boot
spring-boot-starter-jdbc
2.0.4.RELEASE
oracle 数据库操作用的阿帕奇的DBUtil工具
结果还是插入了一条 没有回滚
不知道是否正确