日期:2014-05-18 浏览次数:20685 次
随着一点一点的学习.再回过头来看以前的博客.
觉得自己当初多么可笑.
最近越来越懒.好久没有写博客记录学习笔记了.
今天把以前早就打算写的DetachedCriteria 查询做个整理.
认识还不够.有什么不对的地方希望大神指出.
通过网上了解,还有这段时间的使用.只是知道DetachedCriteria 可以用于查询.
至于好在哪.或者是效率高在哪.完全不知道.
只是会用.觉得DetachedCriteria 可以完成的hql也可以完成.
其他不说了.下面是学习中的一些记录:
我常用的有DetachedCriteria 的如下方法:
add(Criterion criterion)
addOrder(Order order)
createAlias(String associationPath, String alias)
目前我只用了这三个方法.
首先初始化一个DetachedCriteria对象:
DetachedCriteria dc = DetachedCriteria.forClass(Car.class);
dc.add(Restrictions.eq("carNo", "川A88888"));//查询carNo为"川A88888"的对象 dc.add(Restrictions.like("carName","%奔驰%"));//模糊查询carName为奔驰的对象 dc.add(Restrictions.between("date", date1, date2));//查询日期在date1与date2之间的对象,当然不止可以查询日期 dc.add(Restrictions.isNotNull("driver"));//查询driver不为空的,当然对应的还有isNull,isEmpty等
其他常用方法:
allEq(Map propertyNameValues) |
使用Map完成多个对比(其实个人觉得多做几次eq也是可以的) |
and(Criterion lhs, Criterion rhs) |
同sql语句中的and |
ge(String propertyName, Object value) |
>= |
gt(String propertyName, Object value) |
> |
in(String propertyName, Collection values) |
同sql中的in |
le(String propertyName, Object value) |
<= |
lt(String propertyName, Object value) |
< |
or(Criterion lhs, Criterion rhs)
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
|