Jeecg 查询条件拼装-代码解读

2014-11-24 13:13:41 · 作者: · 浏览: 6
许久没有闲下来了,今天不想再写代码了,说说查询条件组装的,虽然基本上是自己写的,但是能写出来不一定可以说出来 ,算是为过两天的讲课做做准备吧. 这个是基于CriteriaQuery 的,而CriteriaQuery又是基于DetachedCriteria这个大家自己看了 写这个的时候,想了挺久,就是想找可以可以扩展的查询拼装,后来定义了这个接口 \ 为每种类型做不同的实现,这个可以为以后类型扩充做准备 判断类型就是依据字段的类型,然后选择类型进行调用,现在实现了 \ 基本上都是基本类型了,其中最复杂是String,其次是Date,但是Date也没有实现这个接口,是因为Date,有个特殊的东西, ps:看来接口定义的还是欠水平 接下来看看调用的代码 1.获取区间值代码,就是加了begin和end的数据源 \
前台,选择查询条件类型group的时候就会添加了
2.根据类型选择IHqlParse的实现类 \ 除了 String类型有些复杂外,其他都挺简单的了
3.时间类型 时间类型有两个级别类型yyyy-MM-dd和yyyy-MM-dd hh:mm:ss 如果还有特殊格式可以使用QueryTimeFormat 在get方法上面做注解表明格式
4.对象属性处理(判断如果下一层还有数据的话,就创建一个别名,继续遍历去了)
到这里基本上就拼装完了,不知道各位看客了解的如何了
其实调用就那么常见的一句话HqlGenerateUtil.installHql(cq,entity,parameterMap) 我们还是帮大家组合了很多where **=**的

By JueYue

Blog:http://blog.csdn.net/qjueyue

Git:http://git.oschina.net/jueyue