MyBatis Generator (MBG) 生成类增加OR条件

MyBatis Generator (MBG) 生成类增加OR条件

问题:在mybatis中想实现一个查询,如下:

SELECT first_field, second_filed, third_field

WHERE first_filed > 1 AND (second_field > 0 ORthird_field < 0)

使用example类么有对应的方法,,比较麻烦。

先提供两种思路,供参考。

1、继承生成的Example类

生成的example类包括一个内嵌的内部类,其已经实现了所有字段的常用过滤条件,内部类的名称总是GeneratedCriteria。

MBG也生成一个内部类,命名Criteria,继承GeneratedCriteria,这里可以给example类增加你自己的功能。

所以基于生成的example类,增加如下自定义条件的代码:

public Criteria multiColumnOrClause(String value1, String value2) { addCriterion("value1 = " + value1 + " OR value2 = " + value2); return this; }

2、开发插件

如果你经常重用,不想给所有mappers都增加,可以抽象出逻辑,用插件来实现。文档有点少,这里有一个示例。

org.mybatis.generator.plugins.CaseInsensitiveLikePlugin

失败是什么?没有什么.只是更走近成功一步,

MyBatis Generator (MBG) 生成类增加OR条件

相关文章:

你感兴趣的文章:

标签云: