oracle事务

事务是一种机制,在数据库的修改操作中需要用到,比如说hibernate中推荐使用事务,spring中aop控制事务,mybatis中工厂提交分手动和自动!等等,看见事务的重要性!!

事务:一条或者一组sql语句组成的工作单元,这一个工作单元作为一个整体,要么都成功,要么都失败!

事务特性(acid):

  • 原子性:事务也就是工作单元是最小的操作组件,不可再分.
  • 一致性:事务操作要么都成功,要么都失败.
  • 不变性:操作前后的总量是不变的.
  • 隔离性:事务之间独立,互不干扰.

需要注意的是,尤其是在hibernate中,如果方法执行了,但是修改操作却没有成功,那么这个时候就要查看事务这里是否监控了,就是hibernate必须有事务.仅限create/update/delete

举个aop配置的例子:

    <!--对事务的监控-->
    <aop:config proxy-target-class="true">
        <aop:pointcut id="txPointcut" expression="execution(* com.javakc.rbac.*.service.impl.*.*(..))"/>
        <aop:advisor pointcut-ref="txPointcut" advice-ref="txAdvice"/>
    </aop:config>
    <!--具体方法的操作-->
        <tx:advice id="txAdvice" transaction-manager="txManager">
        <tx:attributes>
            <tx:method name="create*" propagation="REQUIRED" />
            <tx:method name="delete*" propagation="REQUIRED" />
            <tx:method name="update*" propagation="REQUIRED" />
            <tx:method name="query*" propagation="SUPPORTS" read-only="true"/>
            <tx:method name="*" propagation="SUPPORTS" read-only="true"/>
        </tx:attributes>
    </tx:advice>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值