Hibernate中的HQL查询方式详解
HQL查询:Hibernate Query Language。
是一种面向对象的方式的查询语言。
1、HQL的简单查询
测试代码:
package com.pipi.hibernate04;
import myutils.HibernateUtil;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import java.util.List;
// HQL简单查询,没有条件的查询
public class Test03_HQL {
public static void main(String[] args) {
Session session = HibernateUtil.getCurrentSession();
Transaction transaction = session.beginTransaction();
//String hql = "from com.pipi.hibernate04.Dept";
String hql = "from Dept";
Query query = session.createQuery(hql);
List<Dept> depts = query.list();
for (Dept d : depts) {
System.out.println(d);
}
transaction.commit();
}
}
2、HQL的别名查询
测试代码:
package com.pipi.hibernate04;
import myutils.HibernateUtil;
import org.hibernate.Session;
import org.hibernate.Transaction;
import java.util.List;
// HQL的别名查询
public class Test04_HQL {
public static void main(String[] args) {
Session session = HibernateUtil.getCurrentSession();
Transaction transaction = session.beginTransaction();
//String hql = "from Dept as d";
String hql = "select d from Dept as d";
List<Dept> depts = session.createQuery(hql).list();
for (Dept d : depts) {
System.out.println(d);
}
transaction.commit();
}
}
3、HQL的排序查询
测试代码:
package com.pipi.hibernate04;
import myutils.HibernateUtil;
import org.hibernate.Session;
import org.hibernate.Transaction;
import java.util.List;
// HQL的排序查询
public class Test05_HQL {