springmvc mybatis 数据库是mysql 事务处理

2024年11月28日 14:36
有1个网友回答
网友(1):

  1. 在查询时,有时会出现一种“脏读”的现象,即你一次执行多条查询,但在查询过程中数据发生了修改。
    比如说,你发送了两条SQL语句,完成部门和员工信息的检索,但在你检索出部门信息之后,有人更改了部门号这个数据,于是你可能一个员工都检索不出来。

    不启动事务的查询,数据库的更新会反映在你的查询结果之内,导致检索结果不正确。

    启动事务的查询,在查询结束之前,数据库的更新不会影响到你的查询结果。

  2. @Transactional(propagation = Propagation.REQUIRED, readOnly = true) 是一个只读事务,可以加快事务的处理速度。