【例】雇员信息
第一种方式:查询薪水高于6000的雇员信息
session=HibernateSessionFactory.getSession();
String hql="from Employee e where e.emp_salary>6000";
Query query=session.createQuery(hql);
List<Employee>list=query.list();
for(Employee emp:list){
System.out.println(emp.getEmp_id()+" "+emp.getEmp_name()+" "+emp.getEmp_sex()+
" "+emp.getEmp_birth()+" "+emp.getEmp_job()+" "+emp.getEmp_salary());
}
运行结果:
第二种方式:利用顺序占位符“?”查询薪水高于6000的雇员信息
session=HibernateSessionFactory.getSession();
String hql="from Employee e where e.emp_salary>?";
Query query=session.createQuery(hql);
query.setDouble(0, 6000);
List<Employee>list=query.list();
for(Employee emp:list){
System.out.println(emp.getEmp_id()+" "+emp.getEmp_name()+" "+emp.getEmp_sex()+
" "+emp.getEmp_birth()+" "+emp.getEmp_job()+" "+emp.getEmp_salary());
}
运行结果:
第三种方式:利用引用占位符“:parameter”查询薪水高于6000的雇员信息
session=HibernateSessionFactory.getSession();
String hql="from Employee e where e.emp_salary>:sal";
Query query=session.createQuery(hql);
query.setDouble("sal", 6000);
List<Employee>list=query.list();
for(Employee emp:list){
System.out.println(emp.getEmp_id()+" "+emp.getEmp_name()+" "+emp.getEmp_sex()+
" "+emp.getEmp_birth()+" "+emp.getEmp_job()+" "+emp.getEmp_salary());
}
运行结果: