美文网首页Spring Boot
数据库配置引发的事务失效

数据库配置引发的事务失效

作者: EasyNetCN | 来源:发表于2020-07-09 22:39 被阅读0次

项目中使用了Spring Data JPA,在具体代码中会JPA操作和基于JdbcTemplate操作混合使用,有次发现了事务会失效

bootstrap.yml中的数据库配置

spring:
  application:
    name: goods-service
  jpa:
    show-sql: false
  datasource:
    type: com.zaxxer.hikari.HikariDataSource
    url: jdbc:mysql://${db.host:localhost}:${db.port:3306}/${db.name:test}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&autoReconnect=true
    username: ${db.username:}
    password: ${db.password:}
    hikari:
      data-source-properties:
        cachePrepStmts: true
        prepStmtCacheSize: 500
        prepStmtCacheSqlLimit: 2048
        useServerPrepStmts: true
        useLocalSessionState: true
        useLocalTransactionState: true
        rewriteBatchedStatements: true
        cacheResultSetMetadata: true
        cacheServerConfiguration: true
        elideSetAutoCommits: true
        maintainTimeStats: false

JPA配置

import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.transaction.annotation.EnableTransactionManagement;

@Configuration
@EnableJpaAuditing
@EnableTransactionManagement
@EntityScan("")
@EnableJpaRepositories("")
public class GoodsJpaConfig {

}

最后定位问题,移除了useLocalSessionState,useLocalTransactionState即可

相关文章

  • 数据库配置引发的事务失效

    项目中使用了Spring Data JPA,在具体代码中会JPA操作和基于JdbcTemplate操作混合使用,有...

  • spring-事务

    一 事务信息配置 配置事务管理器及数据库连接池 配置事务注解@Transactional处理,注入事务管理器

  • 一个@Transaction哪里来这么多坑?

    目录前言事务失效  数据库层面  业务代码层面  总结事务回滚相关问题读写分离跟事务结合使用时的问题总结 前言 在...

  • 事务相关的问题总结

    一、事务回滚问题 二、事务失效问题 三、事务失效的解决办法 方式一:自己手动创建事务,提交事务,回滚事务(Spri...

  • springboot事务失效解决-TransactionAspe

    事务失效解决 一 失效原因和写法(同一个类,controller调用有事务的方法) 一 事务生效解决(调用事务的...

  • 聊聊spring事务在异常场景下发生不按套路出牌的事儿

    前言 最近看了一下网上总结的spring事务失效的N个场景,网上列出来的场景有如下 数据库引擎不支持事务 没有被 ...

  • springMVC重复扫描bean导致声明式事务失效

    spring和springMVC进行整合时,经常出现的问题是spring配置的声明式事务失效。 本文主要解决此问题...

  • 事务失效

    一.我碰到的事务失效的可能原因: (1)由于采用的是SpringMVC、 MyBatis,故统一采用了标注来声明S...

  • Spring Data Transaction

    如果repository触发了事物机制,默认的配置包括: 特定的数据库的事务隔离级别; 没有timeout配置; ...

  • MyBatis事务管理机制

    MyBatis作为Java语言的数据库框架,对数据库的事务管理是其非常重要的一个方面。本文将从事务的分类、配置和实...

网友评论

    本文标题:数据库配置引发的事务失效

    本文链接:https://www.haomeiwen.com/subject/sfvecktx.html