1、查询所有的学生信息:
(1)查询结果中,一条信息放入到一个数组中,从list集合中取出数组,并对数组进行遍历。
public class GeneratorTest {
public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student";
SQLQuery sqlQuery=session.createSQLQuery(sql);
List<Object[]>list= sqlQuery.list();
for(Object[] objects:list){
System.out.println(Arrays.toString(objects));
}
System.out.println(list);
transaction.commit();
session.close();
}
(2)直接封装到学生对象中,将对象存储到list集合:
public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student";
SQLQuery sqlQuery=session.createSQLQuery(sql);
sqlQuery.addEntity(Student.class);
List<Student>list= sqlQuery.list();
System.out.println(list);
transaction.commit();
session.close();
}
2、占位符的使用:
public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student where sex=?";
SQLQuery sqlQuery=session.createSQLQuery(sql);
sqlQuery.setParameter(0,"女");
sqlQuery.addEntity(Student.class);
List<Student>list= sqlQuery.list();
System.out.println(list);
transaction.commit();
session.close();
}
3、分页查询:
public static void testSel() {
Session session = HibernateUtils.openSession();
Transaction transaction = session.beginTransaction();
String sql="Select * from Student limit ?,?";
SQLQuery sqlQuery=session.createSQLQuery(sql);
sqlQuery.setParameter(0,0);
sqlQuery.setParameter(1,1);
sqlQuery.addEntity(Student.class);
List<Student>list= sqlQuery.list();
System.out.println(list);
transaction.commit();
session.close();
}