我想尝试一下javabean的连接数据库,于是写了如下这个beanpackage com.mybean;
import java.sql.*;
import java.io.*;
public class TaoTiSelect
{
    //声明变量
    String sDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";   //数据库驱动
    String sConnStr="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_netExam,sa,sa";    //使用桥对数据库连接
    Connection conn=null;
    ResultSet rs=null;    //加载驱动
    public void TaoTiSelect()
    {
        try{
            Class.forName(sDBDriver);
        }
        catch(java.lang.ClassNotFoundException e)
        {
            System.err.println(e.getMessage());
        }
    }    //数据插入
    public void executeInsert(String sql)
    {
        try
        {
            conn=DriverManager.getConnection(sConnStr);
            Statement stmt=conn.createStatement();
            stmt.executeUpdate(sql);
        }
        catch(SQLException ex)
        {
            System.err.println(ex.getMessage());
        }
    }    //数据查询
    public ResultSet executeQuery(String sql)
    {
        rs=null;
        try
        {
            conn=DriverManager.getConnection(sConnStr);
            Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
            rs=stmt.executeQuery(sql);
           
        }
        catch(SQLException ex)
        {
            System.err.println(ex.getMessage());
        }
 return rs;    }    //数据删除
    public void executeDelete(String sql)
    {
        try
        {
            conn=DriverManager.getConnection(sConnStr);
            Statement stmt=conn.createStatement();
            stmt.executeUpdate(sql);
        }
        catch(SQLException ex)
        {
            System.err.println(ex.getMessage());
        }
    }
}
然后用了一个jsp调用它:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,com.mybean.*,java.io.*" errorPage="" %>
  <html>   
  <body>     <jsp:useBean   id="ni" scope="page"  class="com.mybean.TaoTiSelect"/>
<%
TaoTiSelect tts=new TaoTiSelect();
ResultSet rst=null;
rst=tts.executeQuery("select * from tb_Lesson"); 
while(rst.next())  {%>       您的第一个字段内容为:<%=rst.getString(1)%>     您的第二个字段内容为:<%=rst.getString(2)%> <%  }
 %></body>
</html>
   其中,javabean是这样:WEB-INF/classes/com/mybean/TaoTiSelect.class不知道为什么有错误,如下:HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: An exception occurred processing JSP page /abc.jsp at line 129: 
10: 
11: rst=tts.executeQuery("select * from tb_Lesson"); 
12: while(rst.next()) 
13: 
14:  {
15: 
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause java.lang.NullPointerException
org.apache.jsp.abc_jsp._jspService(abc_jsp.java:77)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.
--------------------------------------------------------------------------------Apache Tomcat/6.0.20

解决方案 »

  1.   

    jsp第12行出错了
    500报错都是服务器方面的事,看你: 
    10: 
    11: rst=tts.executeQuery("select * from tb_Lesson"); 
    12: while(rst.next()) 
    13: 
    14: {
    15: 
    这里出错了,
      

  2.   

    ResultSet rst=null;rst=tts.executeQuery("select * from tb_Lesson"); 你的结果集取出来是null,看下你表里面有没数据
      

  3.   

    有数据。。刚才一个哥们帮我看了一下,他把程序用java来尝试了一下,后来把构造函数的void去掉了,可以运行,但是我在jsp里面又重新尝试了一下,还是不行阿
      

  4.   

    我把你的程序试了下,我用的是mysql,你的加载驱动方法应该把void去掉,否则就不能加载,去掉之后应该就没什么问题了
    还有你贴出来的错误其实不是真正的错误所在,是你的服务器端出错了,你应该看看后台有什么错误信息
    希望能帮到你
      

  5.   

    自己发现了,好像contr不能把用户名和连接地址放在一起,给自己吧