springboot项目事务标签验证

 更新时间:2021年07月13日 15:00:58   作者:软件老王  
本文主要介绍了springboot项目事务标签验证,文中通过示例代码介绍的非常详细,详细的介绍了不加事务标签和加事物标签的使用,需要的朋友们下面随着小编来一起学习学习吧

1、问题描述

springboot项目中配置事务,以前通过标签用过,上个内部项目,因为是在别人代码中使用了,发现好像没起作用(然后因为有框架保证,就没计较了),新启动项目又用到,验证了下,springboot项目下配置两个标签就可以了。

2、解决方案

2.1 说明

(1)其实就两个标签,一个用到启动类中(@EnableTransactionManagement),另一个就是那里需要就配置到哪里(@Transactional);

(2)方案,就随便找了个以前的测试项目,一个方法中包含:保存一条数据到数据库中和一个1除以0代码,然后看下加不加事务标签有什么区别;

2.2 代码说明

(1)controller类

    @ResponseBody
    @GetMapping("/tstest")
    public String tstest() {
        this.userService.tstest();
        return "SUCCESS";
    }

(2)service类

    public void tstest() {
        //保存
        UserEntity userEntity = new UserEntity();
        userEntity.setType(0);
        userEntity.setOpenid("1111");
        insert(userEntity);
	
				//报错,回滚
        int i = 1/0;
        System.out.println(i);
    }

2.3 验证1,没有事务

不加事务标签,代码如上。

(1)先清空数据库;

(2)执行tstest请求;

发现insert代码行执行完,数据就存到数据库中了。

接着执行完成(1/0),虽然报错代码报错,但是数据库中数据还是存在的,数据没有回滚,没有保持一致性。

2.4 验证2,有事务

(1)增加两个标签,一个是启动类方法上,一个是tstest方法上。

(2)首先清除数据,执行到insert处

发现虽然insert代码行执行完成了,但是这时候数据库中并没有数据,然后执行完,代码报错,数据回滚,数据库中并没有存入数据,说明事务起到到该有的作用,数据回滚了。

到此这篇关于springboot项目事务标签验证的文章就介绍到这了,更多相关springboot事务标签验证内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java Dubbo服务调用扩展点Filter使用教程

    Java Dubbo服务调用扩展点Filter使用教程

    Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和Spring框架无缝集成
    2022-12-12
  • Java中用enum结合testng实现数据驱动的方法示例

    Java中用enum结合testng实现数据驱动的方法示例

    TestNG数据驱动提供的参数化让我们在测试项目可以灵活根据需求建立不同的dataprovider来提供数据,而真正实现数据,页面,测试彼此独立而又有机结合的可能性。 下面这篇文章主要给大家介绍了Java中用enum和testng做数据驱动的方法示例,需要的朋友可以参考借鉴。
    2017-01-01
  • java编程实现两个大数相加代码示例

    java编程实现两个大数相加代码示例

    这篇文章主要介绍了java编程实现两个大数相加代码示例,具有一定参考价值,需要的朋友可以了解下。
    2017-12-12
  • 使用sharding-jdbc实现水平分表的示例代码

    使用sharding-jdbc实现水平分表的示例代码

    本文主要介绍了sharding-jdbc实现水平分表,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Java向数据库插入中文出现乱码解决方案

    Java向数据库插入中文出现乱码解决方案

    这篇文章主要介绍了Java向数据库插入中文出现乱码解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 使用socket实现网络聊天室和私聊功能

    使用socket实现网络聊天室和私聊功能

    这篇文章主要介绍了使用socket实现网络聊天室和私聊功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • java web开发中大量数据导出Excel超时(504)问题解决

    java web开发中大量数据导出Excel超时(504)问题解决

    开发测试时候导入数据遇到大数据导入的问题,整理了下,需要的朋友可以参考下
    2017-04-04
  • java线程并发semaphore类示例

    java线程并发semaphore类示例

    Java 5.0里新加了4个协调线程间进程的同步装置,它们分别是Semaphore, CountDownLatch, CyclicBarrier和Exchanger,本例主要介绍Semaphore,Semaphore是用来管理一个资源池的工具,可以看成是个通行证
    2014-01-01
  • Java运算符的知识点与代码汇总

    Java运算符的知识点与代码汇总

    这篇文章主要给大家总结介绍了关于Java运算符知识点与代码的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Spring详细讲解FactoryBean接口的使用

    Spring详细讲解FactoryBean接口的使用

    这篇文章主要为大家介绍了Spring容器FactoryBean工厂实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06

最新评论