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


    

许久没有闲下来了,今天不想再写代码了,说说查询条件组装的,虽然基本上是自己写的,但是能写出来不一定可以说出来

,算是为过两天的讲课做做准备吧.
    这个是基于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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值