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

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

1、替换修改

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

2、受影响条数

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

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

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

mapper.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>

在接口中添加:

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

在实现类中添加:

public 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);
}
}

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