各位大侠,帮我写一个获得List集合的完美方法呗~~~通过Query类

解决方案 »

  1.   

     try{
       //创建Session
       session = HibernateUtils.getSession();
       //开启事务
       session.getTransaction().begin();
       //查询User表中的数据
       Query query = (Query)session.createQuery("from User");
       //设置从哪里开始查询数据
       query.setFirstResult(2);
       //设置显示的最大记录条数
       query.setMaxResults(2);
       List userList = query.list();
       for(Iterator iter=userList.iterator();iter.hasNext(); ){
        User user = (User)iter.next();
        System.out.println("user.username: " + user.getUsername());
        System.out.println("user.password: " + user.getPassword());
        System.out.println("user.birthday: " + user.getBirthday());
       }
       //提交事务
       session.getTransaction().commit();
      }catch(Exception ex){
       ex.printStackTrace();
       //有异常的话则回滚事务
       session.getTransaction().rollback();
      }finally{
       HibernateUtils.closeSession(session);
      }
      

  2.   

    你指的完美是什么?
    常规写法:
    Query query = session.createSQL(" .....  ");
    query.setString(0,"");// 设置参数值List<Object> list = query.list();
      

  3.   


    Query query = (Query)session.createQuery("from User"); 不需要转型Query query = session.createQuery("from User");就行了List userList = query.list(); //可以用泛型List<User> userList = query.list();for(Iterator iter=userList.iterator();iter.hasNext(); ){
      User user = (User)iter.next();
      System.out.println("user.username: " + user.getUsername());
      System.out.println("user.password: " + user.getPassword());
      System.out.println("user.birthday: " + user.getBirthday());
      }
    如果是List<User>这个可以foreach吧
    for(User u : list){
    System.out.println("user.username: " + user.getUsername());
      System.out.println("user.password: " + user.getPassword());
      System.out.println("user.birthday: " + user.getBirthday());
    }
      

  4.   


    更正下 是   session.createQuery
      

  5.   

    多谢大家啦,昨天忙了一天。我想要的是一个公用方法,比如很多类都可以使用它。它只负责根据传过来的参数,返回一个List集合