- 1、使用WhereClause改变查询条件
- 2、使用Criteria改变查询条件
- 3、使用Bind Variables改变查询条件
1、使用WhereClause改变查询条件
setWhereClause
通过VO对象的setWhereClause方法改变查询条件
-
- addWhereClause
addWhereClause是在原有whereClause基础上添加新的查询条件;
跟setWhereClause替换原有whereClaue不同;
使用ViewCriteria改变查询条件
- 使用定义好的ViewCriteria
事先在创建VO的时候,定义好几种Criteria:DepartmentsViewCriteria
![](http://dengdezhao.cn/wp-content/uploads/QQ%E6%88%AA%E5%9B%BE20130419134617.jpg)
- addWhereClause
addWhereClause是在原有whereClause基础上添加新的查询条件;
跟setWhereClause替换原有whereClaue不同;
使用ViewCriteria改变查询条件
- 使用定义好的ViewCriteria
事先在创建VO的时候,定义好几种Criteria:DepartmentsViewCriteria
- 2、动态创建ViewCriteria
如果事先没有在VO中定义好ViewCriteria,也可以在MB代码中动态创建
3、使用Bind Variables改变查询条件
- 使用Bind Variables结合ViewCriteria
参照以上定义ViewCriteria时,使用Bind Variables。
- 使用Bind Variables结合SQL
在VO的SQL中使用Bind Variables;
创建Bind Variables:varDeptId
在查询VO时,通过如下代码控制即可实现:
以上几种方法均可实现改变VO查询条件进行动态查询,各有灵活度,目前没有比较三种方式带来的性能影响,可以根据个人习惯采用。(原文地址:http://dengdezhao.cn/blog/2013-04-19/adfxue-xi-zong-jie-%5B%3F%5D/)