石家庄停车位在线预约平台12

hibernate查询方式
HQL查询

    一般查询

//select * from user;
Query query=session.createQuery(“from user”);
List<User> list=query.list();

//select * from user where sex=? and age > ?;
Query query=session.createQuery(“from user where sex=? and age > ?”);
query.setParameter(0,”男”);
query.setParameter(1,”23”);
List<User> list=query.list();


    分页查询
    在MySQL中主要通过limit来分页,但是不同的数据库不一样,所以hibernate不识别limit。

Query query=session.createQuery(“from user”);
query.setFirstResult(0);//起始位置
query.setMaxResults(30);//最大查询数
List<User> list=query.list();


    投影查询

Query query=session.createQuery(“select name from user”);



这里需要注意:hql不支持 select * from user 中的 *

    聚集函数

Query query=session.createQuery(“select count(*) from user”);
//返回唯一值
Object obj=query.uniqueResult();

Criteria查询

    查询所有

Criteria criteria=session.createCriteria(User.class);
List<User> userlist=criteria.list();


    条件查询

Criteria criteria=session.createCriteria(User.class);
criteria.add(Restrictions.eq("uname","张三"));
List<User> userlist=criteria.list();

原文地址:https://www.cnblogs.com/xiaohaigege666/p/12381746.html