• spring boot mysql 事务


    mysql默认 事务自动提交。即:每条insert/update/delete语句,不需要程序手工提交事务,而是mysql自行提交了。

    如果我们想实现程序事务提交,需要事先关闭mysql的自动提交事务。

    但是,如果采用spring管理事务,不需要实现关闭mysql自动提交事务的,因为,spring会帮你关闭mysql的自动提交事务。

    spring:

    <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource" />
    </bean>
    <!-- enable transaction annotation support -->
    <tx:annotation-driven transaction-manager="txManager" />

    springboot:

    1)、启动类上加@EnableTransactionManagement

    @EnableTransactionManagement
    @SpringBootApplication
    @Slf4j
    public class Application {
        public static void main(String[] args) {
            SpringApplication app = new SpringApplication(Application.class);
            app.setBannerMode(Banner.Mode.OFF);
            app.run(args);
            log.info("PortalApplication is success!");
        }
    }

    service的方法上加:@Transactional

    @Transactional(readOnly = false, rollbackFor = Exception.class)
        public AddProjectInfoDto.Resp addPrj(AddProjectInfoDto.Req req) {
    ...
    }
  • 相关阅读:
    ES6
    JavaScript小练习2
    JavaScript实现多重继承
    一个定高,一个高度自适应的布局
    实例教程:1小时学会Python(转)
    备份文件的python脚本(转)
    Python2.5/2.6实用教程:基础篇(转)
    Python 读写 Excel(转)
    python实用技巧 : Filtering os.walk(转)
    Python:文件操作技巧(File operation)(转)
  • 原文地址:https://www.cnblogs.com/yaoyuan2/p/10280544.html
Copyright © 2020-2023  润新知