java_xul
2016-10-10 03:02
采纳率: 0%
浏览 925

mybatis-3.2.1.jar sqlsession的问题

图片说明
辣眼睛,为什么insert调了update方法。求大神解读。

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 毕小宝 2016-10-10 05:33

    楼主在研究mybatis的源码吗,源码这样写说明insert的本质就只执行update操作,那么update的statement语句肯定是也试用于插入操作的。
    所以如果能调式,可以跟踪下update的参数statement

    打赏 评论
  • java_xul 2016-10-10 06:05

    实际上我是在开发中遇到了这样一个错误:索引中丢失IN或OUT参数。问题是:当我发布应用,执行一个insert操作时,第一次能插入成功,第二次再执行时,报错:索引中丢失IN或OUT参数8,然而sql语句总共只有7个参数,让我百思不得其解,于是跟踪了一下代码,发现mabtis的底层竟然insert最终调用的update,于是乎我在mapper文件中将插入的sql标签insert换成update,竟然神奇般的解决了这个问题,我在想这是不是mybatis-3.2.1.jar的一个bug,晚上我看一下更高级的版本,底层代码是否还是这样。。。

    打赏 评论

相关推荐 更多相似问题