public ResultSet query(String sql) 
这个方法里边操作了空对象

解决方案 »

  1.   

    <%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%> <html> <body> <%Class.forName("com.informix.jdbc.IfxDriver").newInstance();String url = "jdbc:informix-sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver; user=testuser;password=testpassword"; //testDB为你的数据库名 Connection conn= DriverManager.getConnection(url); Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); String sql="select * from test";ResultSet rs=stmt.executeQuery(sql);while(rs.next()) {%> 您的第一个字段内容为:<%=rs.getString(1)%>您的第二个字段内容为:<%=rs.getString(2)%><%}%> <%out.print("数据库操作成功,恭喜你");%> <%rs.close(); stmt.close();conn.close(); %> </body> </html>
      

  2.   

    个人觉得是
    stmt=conn.createStatement(); 
    的错误,conn为null了,没有取得连接对象,你可以把System.err里的信息再看看或者贴出来
      

  3.   

    不会是没取到连接
    我将a.jsp
    <%@ page import="java.sql.*"%>
    <%@ page import="java.lang.*"%>
    <%@ page import="aa.jdbc_sql"%>
    <%ResultSet rj=null; %>
    <jsp:useBean id="dbcon" class="aa.jdbc_sql"/>
    <%dbcon.dbcon1();%>
    <%--String sql="select branch from department";
      rj=dbcon.query(sql);--%>
    最后两句屏蔽掉,再执行a.jsp未报任何错误.
      

  4.   

    String driver ="";
    driver=(String)Class.forName("com.informix.jdbc.IfxDriver").newInstance();
    请问这里为什么这样写,为什么不直接写Class.forName("com.informix.jdbc.IfxDriver").newInstance();
    这有什么区别,求教