当前位置: 代码迷 >> J2EE >> J2EE连接数据库报错空指针了。解决方法
  详细解决方案

J2EE连接数据库报错空指针了。解决方法

热度:233   发布时间:2016-04-21 23:42:15.0
J2EE连接数据库报错空指针了。
这段是数据库连接获取数据的代码:
package kignbi.dong;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DB {

Connection connect = null;
ResultSet rs = null;
public DB(DataSource dataSource) {

try {
connect = dataSource.getConnection();
}
catch(SQLException e) {
e.printStackTrace();
}
}

public ResultSet OpenSql(String sql) {
try {
Statement stmt = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);

catch(SQLException ex) { 
ex.printStackTrace();
}
return rs;
}


public int ExecSql(String sql) {
int result = 0;
try {
Statement stmt = connect.createStatement();
result = stmt.executeUpdate(sql);

catch(SQLException ex) { 
System.err.println(ex.getMessage());

}
return result;
}

public void close(){
if(connect!=null){
try{
connect.close();
connect = null;
}catch(SQLException ex) { 
System.err.println(ex.getMessage());
}
}
}
}

还有浏览器报错的提示:
type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

javax.servlet.ServletExceptionjava.lang.NullPointerException
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
kignbi.dong.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:46)


root cause 

java.lang.NullPointerException
kignbi.dong.DB.OpenSql(DB.java:25)
kignbi.dong.action.UserLoginAction.execute(UserLoginAction.java:69)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
kignbi.dong.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:46)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.
有谁能帮忙看看,要怎么改代码才能解决这个问题。
空指针 J2EE

------解决方案--------------------
dataSource实例化了么?
下次代码里面注释上报错的地方
------解决方案--------------------
  相关解决方案