使用spring时session交给spring管理

解决方案 »

  1.   

    Session session =  getSession(); 
    Transaction tx = session.beginTransaction(); 
    session.save(user); 
    tx.commit(); 
    session.close(); 这个为何和那个不一样呢?Session session = this.getSession(); 
    Query query = session.createQuery(hql); 
    List  list = query.list(); 
    return list; 你把它改成和上面的一样看看。Session session = getSession(); 
    Transaction tx = session.beginTransaction(); 
    Query query = session.createQuery(hql); 
    List  list = query.list(); 
    tx.commit(); 
    session.close(); 
    return list; 
      

  2.   

    同意楼上查询为什么不用事务呢?
    同保存一样 
    加上 Transaction ta = sess.beginTransaction();
    xxxxxx;
    xxxxxxxx;
    ta.commit();
    sess.close()
      

  3.   

    可能是没有刷新执行 导致没有返回  所以list为空
    另外:
    你可以在hibernate的配制中加上一个参数 show-sql 设置值为true
    然后你可以在控制台查看hibernate生成的sql语句 
    你把语句复制到查询分析器看有没有返回结果
    这样就会很方便了
      

  4.   

    谢谢各位的帮忙 我已经加上事物了 可是错误依旧,还是那个找不到session的错误
    这是我加的事务
    public List findUser(){
     
    String hql="from User";
    Session session =  getSession();
    Transaction tx = session.beginTransaction();
            Query query = session.createQuery(hql);    
    List  list = query.list(); 
    tx.commit();
    session.close();
                    return list;
            
    }
    但错误还是这个
             Exception in thread "main" java.lang.NullPointerException
    at org.springframework.orm.hibernate3.support.HibernateDaoSupport.getSession(HibernateDaoSupport.java:141)
    at org.my.user.dao.imp.UserDaoImp.findUser(UserDaoImp.java:49)
    at FindUser.main(FindUser.java:8)
    这到底是怎么回事呢
      

  5.   

    谢谢各位的帮忙 我已经加上事物了 可是错误依旧,还是那个找不到session的错误 
    这是我加的事务 
    public List findUser(){ String hql="from User"; 
    Session session =  getSession(); 
    Transaction tx = session.beginTransaction(); 
            Query query = session.createQuery(hql);   
    List  list = query.list(); 
    tx.commit(); 
    session.close(); 
                    return list; 
            

    但错误还是这个 
            Exception in thread "main" java.lang.NullPointerException 
    at org.springframework.orm.hibernate3.support.HibernateDaoSupport.getSession(HibernateDaoSupport.java:141) 
    at org.my.user.dao.imp.UserDaoImp.findUser(UserDaoImp.java:49) 
    at FindUser.main(FindUser.java:8) 
    这到底是怎么回事呢
      

  6.   

    你要确定,是session为空了,还是你的list为空?即没有查询出来数据!
      

  7.   

    List users=this.getHibernateTemplate().find("from User");
      

  8.   

    List users=this.getHibernateTemplate().find("from User");
      

  9.   

    我确定我的session是空的 因为到session就不执行了