在struts中用的action中调用jdbc的模型,一直报空指针错误 
意思是调用一个方法返回connection对象,然后调用令一个方法,这个得到的connection为参数,但是他说好像这个connection为空,是怎么回事啊 .

解决方案 »

  1.   

    是不是你的connection已经关闭了,请描述清楚问题.
      

  2.   

    查看下数据库驱动是否匹配,url和用户名是否正确
      

  3.   

    是这个错误java.lang.NullPointerException
    yu.zxy.regestaction.execute(regestaction.java:32)
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803
      

  4.   

    public class regestaction extends Action { public ActionForward execute(ActionMapping map, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws Exception { ActionForward fo = new ActionForward();
    regestform ff=(regestform)form;
           conDATA cc=new conDATA();
           String sql="select * from student where NAME='"+ff.getUsername()+"'";
         
          cc.set();
           Statement st=cc.getSt();
           
           cc.setR(st,sql);
          ResultSet rs=cc.getRs();
         request.setAttribute("rs", rs);
         
            fo=map.findForward("no");
        
      return fo;
    }
    }就是返回的rs为什么是null
      

  5.   

    rs是返回为空就去测试statament是不是返回为空啊
    输出来看看就知道了
    要是还是为空,就要在前一步去测试connection啊,如此类推了
      

  6.   

    statement 和connection都不为空,只有rs为空
      

  7.   

    查看下数据库驱动是否匹配,url和用户名是否正确
    再看连接是否打开
      

  8.   

    查看下数据库驱动是否匹配,url和用户名是否正确
    再看连接是否打开
      

  9.   

    cc.getRs(); 方法帖上来看看
      

  10.   

    是不是你导Result包时导错了,就是你导入Statement、Connection和Result的包不同,我以前也出现过这个问题。
      

  11.   

    Statement、Connection和Result在同一个包中。
     public void setRs(Statement st,String sql){
       
       try{
       rs=st.executeQuery(sql);
       
       }catch(SQLException e){
       e.printStackTrace();
       
       }
       
       
       }