laowu875054886 2020-09-11 14:13 采纳率: 0%
浏览 342

项目环境要求数据库无事务,如何在使用spring data jpa的增删改查操作时关闭或摘除任何事务操作?

spring-data-jpa 如何关闭事务?

在项目环境中,数据库必须不支持事务

数据库环境配置为无事务环境,jdbc驱动在setAutoCommit时直接回跳Exception("transaction not support")且无法调整

项目使用spring boot结构,增删改查操作等使用了spring-data-jpa的相关功能

调用基本save,delete等方法时,entityManager,transactionManager都会介入,但是调用了事务时必定返回异常,无法继续实行

从各种环境中寻求关闭事务的相关办法,如下所示,但是都不生效

//启动器关闭事务相关
@SpringBootApplication(exclude = TransactionAutoConfiguration.class)
@EnableJpaRepositories(enableDefaultTransactions = false)
//业务方法上关闭事务
@Transactional(propagation= Propagation.NOT_SUPPORTED)

使用spring boot spring-data-jpa 版本

 <dependencyManagement>
        <dependencies>
            <dependency>
                <!-- Import dependency management from Spring Boot -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.1.0.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
         <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
     </dependency>
  • 写回答

1条回答 默认 最新

  • 关注
    评论

报告相同问题?

悬赏问题

  • ¥50 VS2019,xamarin框架串口调试报错Java.Lang.SecurityException: Exception of type
  • ¥20 QT如何判断QLineF线鼠标划过事件
  • ¥15 关于#phpstorm#的问题:phpstorm编辑工具 光标选中了就会自动复制到粘贴板上 这样我之前复制的内容就失效了
  • ¥15 pychram安装jupyter插件
  • ¥60 悬赏破解越狱iphone4s中360保险箱密码遗忘
  • ¥20 ARKts悬浮窗和快捷方式问题
  • ¥15 linux中nginx服务器提示not found on accelerator,如何解决?(语言-php|操作系统-linux)
  • ¥15 comparecluster没有办法kegg
  • ¥15 远程访问linux主机超时
  • ¥15 odoo17存货管理优势于中国国内该行业传统ERP或MES的详细解读和举例