removeFirst在ibatis中将替代方法替换为mybatis迁移

时间:2017-05-19 09:20:25

标签: migration mybatis ibatis spring-mybatis

我正在尝试将我的应用程序从ibatis迁移到mybatis

我在ibatis中使用了removeFirstPrepend =“true”关键字,但不确定在mybatis中使用替代方法

任何建议都会很棒!

1 个答案:

答案 0 :(得分:0)

没有直接替代 - 这是一件好事恕我直言,因为" removeFirstPrepend"很难理解。

在MyBatis中,有更好的新动态SQL标记。例如:

<where>
  <forEach collection="ids" item="id">
    or id = #{id}
  </forEach>
</where>

<where>标记足够聪明,可以写出&#34;其中&#34;在开头,而不是写第一个&#34;和&#34;或&#34;或&#34;。这可以生成一个类似于&#34;其中id =?的子句。或id =?或id =?&#34;。

同样,<set>标记会写&#34;设置&#34;而不是写第一个&#34;,&#34;。

这两个都是<trim>标记的特化。使用该标记,您可以指定要写入的前缀和/或后缀,以及应该忽略列表中第一个/最后一个项目的前缀/后缀字符串。

所以我认为<trim>是取代&#34; removeFirstPrepend&#34;的替代品。就个人而言,我发现它更容易理解。