Hibernate6:Criteria查询

1. 基本查询

public class Criteria1 {

public static void main(String[] args) {

Session session = HibernateUtils.openSession();

Transaction tx = session.beginTransaction();

//创建Criteria查询对象

Criteria criteria = session.createCriteria(Customer.class);

//执行查询获得结果

List<Customer> list = criteria.list();

System.out.println(list);

tx.commit();

session.close();

}

}

2. 条件查询

public class Criteria2 {

public static void main(String[] args) {

Session session = HibernateUtils.openSession();

Transaction tx = session.beginTransaction();

//创建Criteria查询对象

Criteria criteria = session.createCriteria(Customer.class);

//添加查询条件(查询id为1的Customer对象)

criteria.add(Restrictions.eq("cust_id", 1l));

//执行查询获得结果

Customer result = (Customer) criteria.uniqueResult();

System.out.println(result);

tx.commit();

session.close();

}

}

 

3. 分页查询

public class Criteria3 {

public static void main(String[] args) {

Session session = HibernateUtils.openSession();

Transaction tx = session.beginTransaction();

//创建Criteria查询对象

Criteria criteria = session.createCriteria(Customer.class);

//分页查询

criteria.setFirstResult(2);

criteria.setMaxResults(3);

//执行查询获得结果

List<Customer> list = criteria.list();

System.out.println(list);

tx.commit();

session.close();

}

}

4. 聚合函数查询

public class Criteria4 {

public static void main(String[] args) {

Session session = HibernateUtils.openSession();

Transaction tx = session.beginTransaction();

//创建Criteria查询对象

Criteria criteria = session.createCriteria(Customer.class);

//聚合函数查询

criteria.setProjection(Projections.rowCount());

//执行查询获得结果

Long count = (Long) criteria.uniqueResult();

System.out.println(count);

tx.commit();

session.close();

}

}

 

猜你喜欢

转载自blog.csdn.net/luxin120/article/details/89555252