Hibernate中的批量查询

一. Hibernate中的批量查询方式

1. HQL查询----多表查询但是不复杂是使用

2. Criteria查询(无语句查询)----适用单表查询

3. 原声SQL查询----复杂的业务查询

 

二. HQL查询实例讲解

package testHQL;

import hibernateDemo1.Customer;

import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import HibernateUse.HibernateUtils;

//测试HQL
public class HibernateDemo1 {
	//基本查询
	public void demo1(){
		//1. 获得session
		Session session = HibernateUtils.openSession();
		//2. 控制事务
		Transaction tx = session.beginTransaction();
		//3. 执行操作
		//1> 书写HQL语句
		String hql = "from Customer";//查询所有的Customer对象
		//2> 根据HQL语句创建查询对象
		Query query = session.createQuery(hql);
		//3> 根据查询对象获得查询结果
		List<Customer> list = query.list();//返回list结果
		//query.uniqueResult();//节接收唯一的查询结果
		
		System.out.println(list);
	}
	
	//条件查询
	//HQL语句中,不可能出现任何数据库相关的信息的,只能是类的属性名
		public void demo2(){
			//1. 获得session
			Session session = HibernateUtils.openSession();
			//2. 控制事务
			Transaction tx = session.beginTransaction();
			//3. 执行操作
			//1> 书写HQL语句
			String hql = "from Customer where cust_id = 1";//查询所有的Customer对象
			//2> 根据HQL语句创建查询对象
			Query query = session.createQuery(hql);
			//3> 根据查询对象获得查询结果
			Customer c = (Customer)query.uniqueResult();//节接收唯一的查询结果
			
			System.out.println(c);
			
		}
		//条件查询
		//问号占位符
			public void demo3(){
				//1. 获得session
				Session session = HibernateUtils.openSession();
				//2. 控制事务
				Transaction tx = session.beginTransaction();
				//3. 执行操作
				//1> 书写HQL语句
				String hql = "from Customer where cust_id = ?";//查询所有的Customer对象
				//2> 根据HQL语句创建查询对象
				Query query = session.createQuery(hql);
			
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值