Mybatis Update 操作中返回值替换修改为受影响条数

Mybatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。Mybatis 更新操作中返回值默认是替换修改,可以通过一些配置来替换为受影响条数。

1、替换修改

Mybatis 更新操作中返回值默认是替换修改,它返回的是更新前的值,即更新前的数据库中的值。这个值可以是一个对象,也可以是一个列表,取决于你的查询语句。

2、受影响条数

受影响条数是指更新操作执行完毕后,数据库中受到更新的条数,也就是说,受影响条数就是更新操作执行后影响的行数。

3、Mybatis 替换修改为受影响条数

Mybatis 更新操作中返回值可以通过以下配置来替换为受影响条数:

1234mapper.xml文件中添加:<update id="update" parameterType="User">update user set name=#{name} where id=#{id}</update><select id="getUpdateCount" parameterType="User" resultType="int">select row_count()</select>
Java

在接口中添加:

123public interface UserMapper {int update(User user);int getUpdateCount(User user);}
Java

在实现类中添加:

12345public class UserMapperImpl implements UserMapper {public int update(User user) {int updateCount = sqlSession.update("update", user);return sqlSession.selectOne("getUpdateCount", user);}public int getUpdateCount(User user) {return sqlSession.selectOne("getUpdateCount", user);}}
Java

以上配置可以让 Mybatis 更新操作返回受影响条数,而不是替换修改的值。