Mybatis注解的方式,如何实现MySQL ,update后,返回更新后的值

Mybatis注解的方式,如何实现MySQL ,update后,返回更新后的值
强烈推介IDEA2021.1.3破解激活,IntelliJ IDEA 注册码,2021.1.3IDEA 激活码  

大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说Mybatis注解的方式,如何实现MySQL ,update后,返回更新后的值,希望能够帮助大家进步!!!

  • 如果你查看mybatis的源码你就会发现mybatis实现update操作是这样做的
  @Override
  public int update(Statement statement) throws SQLException {
    PreparedStatement ps = (PreparedStatement) statement;
    ps.execute();
    int rows = ps.getUpdateCount();
    Object parameterObject = boundSql.getParameterObject();
    KeyGenerator keyGenerator = mappedStatement.getKeyGenerator();
    keyGenerator.processAfter(executor, mappedStatement, ps, parameterObject);
    return rows;
  }

返回的为int类型的参数,所以如果你想使用<update>这样的标签实现这种功能估计是不可能的,

  • 如果实在想返回参数,可以尝试这这么做:
List<Object> updateReturn();
<select id="updateReturn" resultMap="BaseResultMap" >

  update table_name
    set status=1
    where a='demo';
  select * from table_name limit 10;
</select>
  • 定义一个方法
  • xml中编写代码
本文来源huayang183,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/18314

发表评论