zoukankan      html  css  js  c++  java
  • @Transactional 锁表吗?关于Spring注解@Transactional和SQL for update 的一些观点

    @Transactional 锁表吗?关于Spring注解@Transactional和SQL for update 的一些观点

    工作前几年中,一直接触的是JDBC原生的事务处理方式。

    1. 获取 connection

    2. try {

      con = getDBConnection();

      // sql for update 锁A表, B表。。表记录

      //增删改查

           多个业务处理,

      

          con.commit()

      //最后提交

    3. }  catch Exception {

      con. 回滚

    4. finally {

      con.close();

    }

    后期用了spring 后, @Transactional 实际上代替了try catch finally . 还有 con获取,提交,回滚的操作。

    但是 锁表记录的动作,并不在 这个注解的职责里。 

    所以还是需要 在 dao层 更新记录前,查询记录加行级锁的。 俗称悲观锁, 或者 不加锁使用version判断。俗称乐观锁。

    来搞一下的。

    这两个是不同的职责范围,即:@Transactional注解不包含for update.

    。如此。而已。

  • 相关阅读:
    poj2942 点-双联通+二分图染色
    poj1523割顶-点双联通
    poj3694 边-双连通分量+lca
    poj3177边-双连通分量
    poj3352 边-双联通分量
    Codeforces Round #377 (Div. 2) F
    Educational Codeforces Round 30D. Merge Sort
    洛谷p3369 treap
    hdu3572线性欧拉筛
    HYSBZ
  • 原文地址:https://www.cnblogs.com/java2sap/p/13390148.html
Copyright © 2011-2022 走看看