总结:简单的语句,简短的语句,我们建议使用Example来处理;复杂的语句,较长的语句我们建议自己写语句,方便阅读和分析。
example:范例
Criteria:标准
Criterion:规范
范例最大,标准大,规范小。
范例是一个整体,标准是部分,规范是最小的原子。
范例是整个where子句,每个标准是不含有or逻辑词的条件组合,每个规范是一个不可拆分的单独的条件。
Example类中有一个“标准”泛型的集合,用来存放所有的标准,每个标准之间最后会以or逻辑词组合。每个标准可以无限增加规则,一个标准的每个规则之间最后会用and逻辑词组合。
标准和标准之间是or关系,规范和规范之间是and关系。
this.addCriterion(this.column(property) + " =", value, this.property(property));//增加一个规则
this.criteria.add(new Example.Criterion(condition, value));//增加一个规则的实现
protected List<Example.Criteria> oredCriteria;//标准集合,集合中的每个元素之间是或的关系(顾名思义,ored+Criteria=oredCriteria=或关系的标准)
this.oredCriteria.add(criteria);
Example.Criteria criteria = example.createCriteria();//标准集合为空时,才会向其中加入这个标准,方法代码如下
p