• 技术文章 >java >java基础

    java声明式事务的三种方法

    小妮浅浅小妮浅浅2021-02-23 09:52:07原创3573

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    一、声明式事务

    通过 AOP(面向切面)方式在方法前使用编程式事务的方法开启事务,在方法后提交或回滚。用配置文件的方法或注解方法(如:@Transactional)控制事务。

    注解在方法上是方法自动启动事务,在类上是整个类中的方法都使用事务

    二、方法

    1.基于TransactionProxyFactoryBean的声明式事务管理

    applicationContext.xml中配置

    然后在需要进行事务管理的service层注入这个代理类 accountrviceProxy

    @Resource(name="accountrviceProxy")

    这种方式有个缺点,就是我们要给每一个需要进行事务管理的service类都要配上它的代理类,配置起来比较繁琐。

    2.基于AspectJ的XML的声明式事务管理

    在配置切入点时有一个表达式:

    expression="execution(* com.cn.study.spring.service.IAccountService+.*(..))"

    execution括号里的参数依次表示 方法返回类型,包名,类名,方法名及方法的参数

    其中 * 表示任意

    IAccountService+ 表示 IAccountService接口所有实现类的方法

    这种方式是比较常用的一种。

    3.基于注解的声明式事务管理

    第三种方式最简单,我们只需要在applicationContext.xml中配置开启注解事务的驱动,然后在需要进行事务管理的类前加上注解:

    @Transactional(propagation=Propagation.REQUIRED)

    以上就是java声明式事务的三种方法,在对其中方法不是很理解的时候,可以结合图片一起配置。学会后也可以对声明式事务的其他内容进行查找。

    专题推荐:java声明式事务方法
    上一篇:java事务的类型有哪几个 下一篇:java之JDBC事务的应用

    相关文章推荐

    • java中mybatis和hibernate的总结• 分页处理java多线程的数据• java标识符的基础使用• java事务的类型有哪几个

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网