enter image description here当我使用JpaSpecificationExecutor进行findAll时,我发现了它 自动添加事务,使用
启动sql设置自动提交= 0;
我不想要它。
我测试JpaRepository,执行相同的select sql,但没有 设置自动提交= 0;
但JpaSpecificationExecutor具有。
然后我把它弄破了,发现有一个代理可以添加事务,但是我不知道如何禁用它。
我确实将defaultAutoCommit设置为true
我也设置了
datasource:
tomcat:
default-auto-commit: true
dbcp2:
default-auto-commit: true
连接池已经是defaultAutoCommit = true
没有帮助
所以我怪JpaSpecificationExecutor
@Repository
public interface GameRepository extends JpaRepository<GameEntity, Integer>, JpaSpecificationExecutor<GameEntity> {
List<GameEntity> findByName(String name);
}
public List<GameEntity> search(HttpServletRequest request) {
return mGameRepository.findAll(searchAction(request), new Sort(Sort.Direction.DESC, "id"));
}
答案 0 :(得分:0)
结果表明,所有CRUD方法(CrudRepository方法)默认情况下都标记为事务性的。
但是我如何取消标记呢?