我在单个jsp页面连接数据库没问题,当把连接数据库做成一个bean时,在页面调用就不成功,出现如下错误:
org.apache.jasper.JasperException: Exception in JSP: /t1.jsp:2320: String sql="";
21: ResultSet rs=null;
22: sql="select * from dept"; 
23: rs=DBbean.excuteQuery(sql);
24: //rs=DBbean.executeQuery(sql);                      
25: while(rs.next()) {%> 
26: <%=rs.getString(1)%> - <%=rs.getString(2)%>- <%=rs.getString(3)%> <br> 
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:467)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:389)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause java.lang.NullPointerException
dbConn.dbConn.excuteQuery(dbConn.java:34)
org.apache.jsp.t1_jsp._jspService(t1_jsp.java:75)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)dbConn.java ,如下:
package dbConn;import java.sql.*;
import java.io.*;
import java.util.*;
import javax.naming.*;
public class dbConn{
Connection conn = null; 
CallableStatement stmtpro = null;
Statement stmt=null;
ResultSet rs = null;
public dbConn(){
try {
   Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 
   //Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
   //conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databaseName=ecorr;user=user;password=123");
   String url="jdbc:oracle:thin:@192.168.0.78:1521:vps"; //orcl为你的数据库的SID 
   String user="scott"; 
   String password="tiger"; 
   Connection conn= DriverManager.getConnection(url,user,password); 
   } catch(java.lang.SecurityException se) {
throw se;
} catch(java.lang.Exception e) {
e.printStackTrace();
}
}
//数据处理
public ResultSet excuteQuery(String sql){
stmt=null;
rs = null;
try { 
 stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);   //第34行                                              
     rs=stmt.executeQuery(sql);
     } catch(SQLException ex){
       System.err.println("sql_data.executeUpdate:"+ex.getMessage());
}
     //显示数据库连接错误或者查询错误 
                                
     return rs;                          
    }
//数据更新
public int executeUpdate(String sql){
stmt=null;
int number = 0;
try {
       stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);    
       stmt.executeUpdate(sql);
       if (conn==null) { return -1; }
       if (stmt == null) { return -1; }
        } 
catch(SQLException ex){
       System.err.println("sql_data.executeUpdate:"+ex.getMessage());
       return -1;
        }
       return number;
    }
    
    public String executeProcedure(String BHMC){
stmtpro = null;
String BH=null;
String sql=null;
sql="{ call P_NB_BH(?,?)}";
try {    
     stmtpro=conn.prepareCall(sql);                                                 
     stmtpro.setString(1,BHMC);
     stmtpro.registerOutParameter(2,Types.CHAR);
     stmtpro.executeUpdate();
     BH = stmtpro.getString(2);
     } catch(SQLException ex){
       System.err.println("sql_data.executeUpdate:"+ex.getMessage());
     //显示数据库连接错误或者查询错误 
                             }   
     return BH;
}//关闭数据源,断开连接
public boolean close(){
try{
if(this.rs!=null){
this.rs.close();

if(stmt!=null){
this.stmt.close();
}
if(stmtpro!=null){
this.stmtpro.close();
}
if(conn!=null){
this.conn.close();
}
return true;
}catch(Exception err){
return false;
}
}public String show(String str){
String str1="";
if(str.compareTo("1")==0){
str1="\u221A";
}else{
str1="&nbsp;";
}
return str1;
}
    
}