JPA中的save()失效

问题描述:使用jpa的默认的save()明明执行insert成功了(开启控制台的sql已经看到了insert语句),但在数据库却没有更新对应的记录?

        FileResource save = fileRepository.saveAndFlush(fileResource);

一来就想到的是跟事务提交有关,自己确实在save方法上使用了声明式事务:

  @Transactional(rollbackFor = Exception.class)
    @Override
    public Boolean saveObj(FileResource fileResource) {
        FileResource save = fileRepository.saveAndFlush(fileResource);
        return ObjectUtil.isNotEmpty(save);
    }

除了开启以上的声明式事务,另外一边,自己又使用编程式事务开启了一个方法的事务。后来把编程事务注释了,看到save()生效了,数据库增加了一行记录。
这是因为出现了两个事务管理器,产生了矛盾吧,我是这样想的;具体准确原因还有待探究,先记录在这里

你可能感兴趣的:(springdatajpa,java,mysql)