远方蔚蓝
一刹那情真,相逢不如不见

文章数量 126

访问次数 199887

运行天数 1437

最近活跃 2024-10-04 23:36:48

进入后台管理系统

Hibernate时间条件查询


DetachedCriteria detachedCriteria = DetachedCriteria.forClass(DevError.class);
    Pager pager = PagerUtil.createPager(request);
    if(!StringUtil.isBlank(command.getDeviceCode())){
        detachedCriteria.add(Restrictions.eq("deviceId", command.getDeviceCode()));
    }
    try {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
        // 开始时间不为空,结束时间为空
        if(!StringUtil.isBlank(command.getStarDate()) && StringUtil.isBlank(command.getEndDate())){
            detachedCriteria.add(Restrictions.and(Restrictions.between("createTime", sdf.parse(command.getStarDate() + " 00:00:00"), new Date())));
        }
        // 结束时间不为空,开始时间为空
        else if(!StringUtil.isBlank(command.getEndDate()) && StringUtil.isBlank(command.getStarDate())){
           detachedCriteria.add(Restrictions.and(Restrictions.between("createTime", sdf.parse("1970-01-01 00:00:00"), sdf.parse(command.getEndDate() + " 23:59:59"))));
        }
        // 开始时间不为空,结束时间不为空
        else if (!StringUtil.isBlank(command.getStarDate()) && !StringUtil.isBlank(command.getEndDate())){
            detachedCriteria.add(Restrictions.and(Restrictions.between("createTime", sdf.parse(command.getStarDate() + " 00:00:00"), sdf.parse(command.getEndDate() + " 23:59:59"))));
        }else {
        
        }
    } catch (ParseException e) { }
    detachedCriteria.addOrder(Order.asc("createTime"));