JavaBeanpackage javafan;
import java.sql.*;public class Jdbctest{
    String sDBDriver="sun.jdbc.odbc.JdbcOdbcDriver"; //"org.gjt.mm.mysql.Driver";
    String sConnStr="jdbc:odbc:cc"; //jdbc:mysql://localhost:3306/guestbook?user=root&password=&useUnicode=true&characterEncoding=ISO-8859-1";
    Connection conn=null;
    ResultSet rs=null;
    
public Jdbctest(){
try{
            Class.forName(sDBDriver);
        }
        catch(java.lang.ClassNotFoundException e){
            System.out.println("Jdbc_conn():"+e.getMessage());
        }
    }

public void executeUpdate(String sql)throws Exception{
sql=new String(sql.getBytes("GBK"),"ISO8859_1");
try{
conn=DriverManager.getConnection(sConnStr);
            Statement stmt=conn.createStatement();
            stmt.executeUpdate(sql);
conn.close();
stmt.close();
        }
        catch(SQLException ex){
            System.out.println("sql.executeUpdate:"+ex.getMessage());
        }
    }
public ResultSet executeQuery(String sql)throws Exception{
        rs=null;
try{
sql=new String(sql.getBytes("GBK"),"ISO8859_1");
            conn=DriverManager.getConnection(sConnStr);
            Statement stmt=conn.createStatement();
            rs=stmt.executeQuery(sql);
conn.close();
stmt.close();
        }
        catch(SQLException ex){
            System.out.println("sql.executeQuery:"+ex.getMessage());
        }
return rs;
    }
}网页里面的内容. index.jsp:
<%@ page contentType="text/html;charset=gb2312" errorPage=""%>
<%@ page import="java.sql.*" %>
<jsp:useBean id="gbook" scope="page" class="javafan.Jdbctest"/>
<%
int RowCount=0;
String sql="select * from member"; //执行字符串ResultSet rt = gbook.executeQuery(sql);//取得记录总数rt.close();
//RowCount=rt.getInt(1);//取得整数保存在RowCount变量中
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title><%=rt.getString("name")%></title>
<link rel="stylesheet" href="style.css" type="text/css"></head><body leftMargin=0  topMargin=0 marginheight="0" marginwidth="0"></body>
</html>
出错提示:type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Exception in JSP: /index11.jsp:107: 
8: ResultSet rt = gbook.executeQuery(sql);//取得记录总数
9: 
10: rt.close();
11: //RowCount=rt.getInt(1);//取得整数保存在RowCount变量中
12: %>
13: <html>
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause java.lang.NullPointerException
org.apache.jsp.index11_jsp._jspService(org.apache.jsp.index11_jsp:61)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.15 logs.
--------------------------------------------------------------------------------

解决方案 »

  1.   

    我用的是JDBC ODBC桥, 
    连接的是ACCESS数据库
      

  2.   

    建立记录集
     添加rt.next();
      

  3.   

    你结果集已经关闭了。你必须在查数据并显示后才能关闭的。
    还有建议用字段序列号来查询数据
    比如
    第一个字段用rs.getString(1)
      

  4.   

    不行, 
    我rs.next()
    rs.nextString(1)
    都试过了, 都是空指针错误
      

  5.   

    错了, 不是,rs.nextString(1)
    是,rs.getString(1) 这些都不行。我库里面有内容。 再问下, A59229617 建立记录集是什么?