方法 | 说明 |
Restrictions.eq | = |
Restrictions.allEq | 利用Map来进行多个等于的限制 |
Restrictions.gt | > |
Restrictions.ge | >= |
Restrictions.lt | < |
Restrictions.le | <= |
Restrictions.between | BETWEEN |
Restrictions.like | LIKE |
Restrictions.in | in |
Restrictions.and | and |
Restrictions.or | or |
Restrictions.sqlRestriction | 用SQL限定查询 |
下面是一个例子:
@SuppressWarnings("unchecked")
public List<SSub> Select(SSub sub) {
Session session = null;
Transaction ta = null;
List<SSub> list = new ArrayList<SSub>();
try {
session = HibernateSessionFactory.getSession();
ta = session.beginTransaction();
Criteria criteria = session.createCriteria(SSub.class);
if (sub.getArriveTime() != null || !sub.getArriveTime().equals("")) {
criteria.add(Restrictions.eq("arriveTime", sub.getArriveTime()));
} else if (sub.getCreateTime() != null || !sub.getCreateTime().equals("")) {
criteria.add(Restrictions.eq("createTime", sub.getCreateTime()));
} else if (sub.getDriver() != null || !sub.getDriver().equals("")) {
criteria.add(Restrictions.eq("driver", sub.getDriver()));
} else if (sub.getId() != null || !sub.getId().equals("")) {
criteria.add(Restrictions.eq("id", sub.getId()));
} else if (sub.getKeeperId() != null || !sub.getKeeperId().equals("")) {
criteria.add(Restrictions.eq("keeperId", sub.getKeeperId()));
} else if (sub.getLicense() != null || !sub.getLicense().equals("")) {
criteria.add(Restrictions.eq("license", sub.getLicense()));
} else if (sub.getOrderId() != null || !sub.getOrderId().equals("")) {
criteria.add(Restrictions.eq("orderId", sub.getOrderId()));
} else if (sub.getSubContent() != null || !sub.getSubContent().equals("")) {
criteria.add(Restrictions.eq("subContent", sub.getSubContent()));
} else if (sub.getSubNumber() != null || !sub.getSubNumber().equals("")) {
criteria.add(Restrictions.eq("subNumber", sub.getSubNumber()));
} else if (sub.getTel() != null || !sub.getTel().equals("")) {
criteria.add(Restrictions.eq("tel", sub.getTel()));
}
ta.commit();
list = criteria.list();
} catch (Exception e) {
// TODO: handle exception
if (ta != null) {
ta.rollback();
}
e.printStackTrace();
} finally {
if (session != null) {
session.close();
}
}
return list;
}