hibernate查询

Hibernate关于查询

HQL查询

方法:Session#createQuery(“HQL”);

示例1:使用?占位符

Query query = session.createQuery("from User where uName like ?");

query.setString(0, "小%");

List<User> users=query.list();

System.out.println(users);

示例2:使用字符占位符

Query query = session.createQuery("from User where uName like :name");

query.setString("name", "小%");

List<User> users=query.list();

System.out.println(users);

 

Criteria接口:适合条件查询

示例1

//查询姓名为小明的

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

criteria.add(Restrictions.eq("uName", "小明"));

List<User> users=criteria.list();

System.out.println(users);

 

排序:

Session.createQuery(“from User order by u_id desc”);

 

分页:

Session.createQuery(“from User”).setFirstResult().setMaxResults(3);

 

投影查询:

只查询几个字段

不使用

List<Object> list=Session.createQuery(“select u_name u_id from User ”).list();

使用:

1、提供构造方法

Session.createQuery(“select new User(u_id,u_name) from User ”).list();

 

聚合函数:count() sum() avg() max() min()

LIst<Number> list=Session.createQuery(“select count(u) from User  u”).list();

Long count=list.get(0).longValue();

 

 

 

QBC查询(单表查询)

 

排序

 

条件查询

 

使用完聚合函数,如果想再获取对象列表,需要将projection设置为null

 

离线条件查询

 

通过sql查询(了解)

 

 

 

 

HQL连接查询

 

 

转载于:https://www.cnblogs.com/chenkeyu/p/7985258.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值