/** * 删除用户 by id * @param id * @return */ //不加Transactional会报错 @Transactional public Integer deleteById(Integer id);
现象:报No EntityManager with actual transaction available for current thread 错误,并且select 不会报错,删除操作会报错。
原因:异常可能是由于在需要事务的方法上,没有开启事务,结果就操作需要事务的方法比如保存,修改数据库数据方法。
解决办法: 修复方式也特别简单,在需要事务的方法上加入加上注解:@Transactional即可。