hibernate 查询的用法

本文介绍了Hibernate框架中的两种主要查询方式:HQL语句和Criteria API。通过实例展示了如何使用HQL进行基本的增删改查操作,以及如何利用Criteria API实现复杂的多表查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

hibernate 的两种查询方式




一.常用的hql语句:




persion


private Integer id;
private String name;
private Integer age;


1. from Person person;
2. from Person person where person.name='zhangsan';
3. from Person person where person.id between 1 and 2;
4. from Person person where person.id in(1,2)
5. from Person person where person.name like '%li%'
6. update Person person set person.name='lily' where person.id=1;
7. delete from Person person where person.age = 10;




二.Criteria


用法:1.
单张表查询
Criteria criteria = getSession().createCriteria(TblReserveOrderItem.class, "orderItem");
      criteria.add(Restrictions.ge("order.reserveDatetime", nextDateTime));
      criteria.list();
      2.多张表查询
Criteria criteria = getSession().createCriteria(TblReserveOrderItem.class, "orderItem");
criteria.createAlias("orderItem.tblReserveOrder", "order");
criteria.createAlias("order.tblStarbucksStore", "store");
criteria.add(Restrictions.eq("store.storeId", storeId));
criteria.add(Restrictions.eq("orderItem.statusId", statesId));
criteria.add(Restrictions.ge("order.reserveDatetime", nextDateTime));
criteria.addOrder(Order.asc("order.name"));//根据名字升序排列
criteria.list();
Restrictions的常用的
Restrictions.eq equals 等于
Restrictions.gt great than 大于
Restrictions.ge great equals 大于等于
Restrictions.lt less than 小于
Restrictions.le less equals 小于等于
Restrictions.between
Restrictions.like
Restrictions.in
Restrictions.and
Restrictions.or
Restrictions.isNull
Restrictions.isNotNull
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值