//创建criteria查询,括号中为要操作的bean
Criteria criteria = session.createCriteria(ScienceCorporation.class);
//criteria添加条件
criteria.add(Restrictions.eq("scName", corporationName));
//criteria排序,括号中为排序条件
criteria.addOrder(Order.asc("jlsj"));
criteria模糊查询,
以整个对象的形式进行模糊查询,criteria.add(Example.create(corporationForm).enableLike(MatchMode.ANYWHERE).excludeProperty(“name”));
corporationForm为对象,MatchMode.ANYWHERE代表查询所有值如果要排除某一个字段就要是用).excludeProperty(“name”));name为要排除的字段名,
注:用Example模糊查询属性类型必须是字符串不能为long或者Int。
criteria普通查询,
//添加查询条件,相当于and
criteria.add(Restrictions.eq("id", "1"));
//但如果我希望使用or时应该怎么做呢,这两个条件可是不同对象里的
Restrictions.or(Restrictions.eq("id", "1"), Restrictions.eq("id", "2"));
//name值为null
Restrictions.isNull("name")
//number小于5
Restrictions.lt("number", 5)
//number小于等于5
Restrictions.le("number", 5)
//number大于5
Restrictions.gt("number", 5)
//number大于等于5
Restrictions.ge("number", 5)
//返回number的最大值
criteria.setProjection(Projections.projectionList().add(Projections.max("number")));
//根据时间范围查询,(注:默认取出来的时间是0点,那么条件的结束时间应改为23:59:59。否则结束条件当前的数据无法查出来)
criteria.add(Restrictions.between("jljlsj", jljlsjq, jljlsjz));