歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Hibernate之Query接口的uniqueResult()方法

Hibernate之Query接口的uniqueResult()方法

日期:2017/3/1 10:41:42   编辑:Linux編程

如果查詢返回多個值用list()方法

  1. public void testQuery(){
  2. Configuration config = new Configuration().configure();
  3. SessionFactory factory = config.buildSessionFactory(); //創建SessionFactory
  4. Session session = factory.openSession(); //創建Session
  5. session.beginTransaction(); //開始事務
  6. Query query = session.createQuery("from Student");
  7. List list = query.list(); // 用list方法返回多個值
  8. //List list = session.createQuery("from Student").list();
  9. for(int i=0;i<list.size();i++){
  10. Student student = (Student)list.get(i);
  11. System.out.print(student.getId()+" ");
  12. System.out.print(student.getName()+" ");
  13. System.out.print(student.getSex()+" ");
  14. System.out.print(student.getBirthday());
  15. System.out.println();
  16. }
  17. session.getTransaction().commit(); //提交事務
  18. session.close(); //關閉Session
  19. }
當確定返回的實例只有一個或者null時 用uniqueResult()方法
  1. public void testGet(){
  2. Configuration config = new Configuration().configure();
  3. SessionFactory factory = config.buildSessionFactory();
  4. Session session = factory.openSession();
  5. session.beginTransaction();
  6. Query query = session.createQuery("from Student s where s.id=?");
  7. query.setString(0, "2");
  8. Student student = (Student)query.uniqueResult(); //當確定返回的實例只有一個或者null時 用uniqueResult()方法
  9. //Student student = (Student)session.createQuery("from Student s where s.id=?").setString(0,"5").uniqueResult();
  10. System.out.println(student.getName());
  11. System.out.println(student.getBirthday());
  12. session.getTransaction().commit();
  13. session.close();
  14. }
Copyright © Linux教程網 All Rights Reserved