本帖最后由 lv2165090 于 2010-05-05 00:54:18 编辑

解决方案 »

  1.   

     private int currentPage;//当前页数
                              private int countRecord;//总记录条数
                              private int countPage;//总页数
                              private int sizePage;//每页记录条数
      

  2.   

    java.lang.NullPointerException
    建议DEBUG下。
      

  3.   

       Debug 一下  , 顺便使用简单的测试代码  出现NULLPOINTEXCEPTION的地方在哪儿?
          建议使用System.out.println("")
      

  4.   

    本人刚学没多久 怎么Debug 调试?
      

  5.   

    每一个jsp文件都会在应用服务器中编译成相对应的java文件, 你把java文件找出来
      然后粘贴出来, 告诉我们发生异常的代码段, 这样就很容易解决问题!
      

  6.   


    这是编译完的check_jsp.java   只有第一页数据 当点击下一页或末页 无法继续查询package org.apache.jsp.chap05.usepage;import javax.servlet.*;
    import javax.servlet.http.*;
    import javax.servlet.jsp.*;
    import java.sql.*;
    import page.*;public final class check_jsp extends org.apache.jasper.runtime.HttpJspBase
        implements org.apache.jasper.runtime.JspSourceDependent {  private static java.util.Vector _jspx_dependants;  public java.util.List getDependants() {
        return _jspx_dependants;
      }  public void _jspService(HttpServletRequest request, HttpServletResponse response)
            throws java.io.IOException, ServletException {    JspFactory _jspxFactory = null;
        PageContext pageContext = null;
        HttpSession session = null;
        ServletContext application = null;
        ServletConfig config = null;
        JspWriter out = null;
        Object page = this;
        JspWriter _jspx_out = null;
        PageContext _jspx_page_context = null;
        try {
          _jspxFactory = JspFactory.getDefaultFactory();
          response.setContentType("text/html;charset=GB2312");
          pageContext = _jspxFactory.getPageContext(this, request, response,
           null, true, 8192, true);
          _jspx_page_context = pageContext;
          application = pageContext.getServletContext();
          config = pageContext.getServletConfig();
          session = pageContext.getSession();
          out = pageContext.getOut();
          _jspx_out = out;      out.write("\r\n");
          out.write("\r\n");
          out.write("  \r\n");
          out.write("<a href=\"login.jsp\">返回首页</a>!</h1>\r\n");
          page.pagebean pagebean = null;
          synchronized (session) {
            pagebean = (page.pagebean) _jspx_page_context.getAttribute("pagebean", PageContext.SESSION_SCOPE);
            if (pagebean == null){
              pagebean = new page.pagebean();
              _jspx_page_context.setAttribute("pagebean", pagebean, PageContext.SESSION_SCOPE);
            }
          }
          out.write('\r');
          out.write('\n');
          page.conndb databean = null;
          synchronized (session) {
            databean = (page.conndb) _jspx_page_context.getAttribute("databean", PageContext.SESSION_SCOPE);
            if (databean == null){
              databean = new page.conndb();
              _jspx_page_context.setAttribute("databean", databean, PageContext.SESSION_SCOPE);
            }
          }
          out.write("\r\n");
          out.write("<HTML>\r\n");
          out.write("<title>用户数据</title>\r\n");
          out.write("<BODY>\r\n");
     
       
       String s[];
       request.setCharacterEncoding("gb2312");//改变传递时的编码 来处理汉字乱码
       String name=request.getParameter("textfield"); 
       s = name.split(" ");      out.write('\r');
          out.write('\n');         ResultSet rs;
     boolean flag = false ;
            
       String sql="SELECT * FROM da_jnwjb WHERE tmh LIKE '%"+s[0]+"%'  "; 
        for(int j=1;j<s.length;j++){
       sql+=" OR tmh LIKE '%"+s[j]+"%'";
       }//拼接SQL语句 实现查询S中每一个元素
             rs=databean.executeQuery(sql);         //执行sql语句,使用了javabean conndb中的executeQuery
     if(rs.next()){
    // 如果有内容,则此处执行,表示查询出来
    flag = true ;
    }
     
             String pages=request.getParameter("dipage");  //读取当前的页数
             rs.last();
             int countRecord=rs.getRow();  //得到记录的条数
             int countPageRecord=5;        //设置每页记录条数
             if(pages==null||(pages.trim()).length()==0)   //如果当前页数不存在,也就是初次进入页面
              {
           pagebean.setAll(countRecord,countPageRecord); //参数初始化,使用javabean pagebean中的setall,当前页数设为1
       }
               else
               {
                   try
                   {
                       pagebean.setCurrentPage(Integer.parseInt(pages));
                       }
                   catch(Exception e)
                    {
                       out.println("参数不正确!");
                       }
                }
             //当前记录号
             int currentRecord=(pagebean.getCurrentPage()-1)*pagebean.getSizePage();
             if(currentRecord==0)
     {
                 rs.beforeFirst();
     }
             else{
               rs.absolute(currentRecord);
       }
             //显示当前页数据
     out.print("<Table Border>");
             out.print("<TR>");
             out.print("<TH width=100>"+"分类号");
             out.print("<TH width=100>"+"全宗号");
             out.print("<TH width=100>"+"页号");
             out.print("<TH width=150>"+"文件题名");
             out.print("<TH width=200>"+"sort1");
             out.print("</TR>");
     
     int i=0;
             while(rs.next())
             {

                 out.print("<TR>");
                 out.print("<TD >"+rs.getString("flh")+"</TD>"); 
                 out.print("<TD >"+rs.getString("qzh")+"</TD>");
                 out.print("<TD >"+rs.getString("yh")+"</TD>"); 
                 out.print("<TD >"+rs.getString("tmh")+"</TD>");
                 out.print("<TD >"+rs.getString("sort1")+"</TD>");  
                 out.print("</TR>") ;
     i=i+1;
         if(i>=pagebean.getSizePage()) {
                                    break; //当前页显示完,则退出循环
                                                       }}
                 out.print("<TR><td colspan=8 align=center>");
                 out.print("共"+pagebean.getCountRecord()+"条记录,共"+pagebean.getCountPage()+"页,当前第"+pagebean.getCurrentPage()+"页,每页"+pagebean.getSizePage()+"条记录,");
                 if(pagebean.getCurrentPage()==1)//当前是首页
                         ;
                 else//当前不是首页
                 {
                      out.print("<a href=check.jsp?dipage=1>首页</a>,");
                      out.print("<a href=check.jsp?dipage="+(pagebean.getCurrentPage()-1)+">上一页</a>,");
                      }
                 if(pagebean.getCurrentPage()==pagebean.getCountPage())//当前是末页
                        ;
                 else//当前不是末页
                { 
                      out.print("<a href=check.jsp?dipage="+(pagebean.getCurrentPage()+1)+">下一页</a>,");
                      out.print("<a href=check.jsp?dipage="+pagebean.getCountPage()+">末页</a>");
                      }             out.print("</td></tr>");
                 out.print("</Table>");
                 databean.freeRs(rs);  //释放rs
     
          out.write("\r\n");
          out.write("\t\t\t "); if(!flag){ // 登陆成功,应该跳转到success.jsp
          out.write('\r');
          out.write('\n');
          out.write(' ');
          if (true) {
            _jspx_page_context.forward("failure.jsp");
            return;
          }
          out.write('\r');
          out.write('\n'); }      out.write("\r\n");
          out.write("\r\n");
          out.write("</BODY>\r\n");
          out.write("</HTML>\r\n");
        } catch (Throwable t) {
          if (!(t instanceof SkipPageException)){
            out = _jspx_out;
            if (out != null && out.getBufferSize() != 0)
              out.clearBuffer();
            if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
          }
        } finally {
          if (_jspxFactory != null) _jspxFactory.releasePageContext(_jspx_page_context);
        }
      }
    }
      

  7.   

    这其实不是一个问题,在ssh中用很简单的方法就能实现,以上写的都不是好的实现
      

  8.   

    学学ssh这些框架技术吧,因为他们是主流