java.lang.NullPointerException db.DBClass.executeUpdate(DBClass.java:124)
程序如下:package db;import java.sql.*;public class DBClass {
private String driver;
private String url;
private String name;
private String password;
private Connection conn;
private Statement state;
private String message = ""; public DBClass() {
driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=JPKC";
name = "";
password = "";
conn = null;
state = null;
message = "";
} public DBClass(String driver, String url, String name, String password,
Connection conn, Statement state, String message) {
super();
this.driver = driver;
this.url = url;
this.name = name;
this.password = password;
this.conn = conn;
this.state = state;
this.message = message;
} public String getDriver() {
return driver;
} public void setDriver(String driver) {
this.driver = driver;
} public String getUrl() {
return url;
} public void setUrl(String url) {
this.url = url;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public Connection getConn() {
return conn;
} public void setConn(Connection conn) {
this.conn = conn;
} public Statement getState() {
return state;
} public void setState(Statement state) {
this.state = state;
} public String getMessage() {
return message;
} public void setMessage(String message) {
this.message = message;
} public void connect() {
try {
Class.forName(driver);
conn = DriverManager.getConnection(url, name, password);
state = conn.createStatement();
} catch (ClassNotFoundException cnfe) {
message = "" + cnfe;
} catch (SQLException sqle) {
message = "" + sqle;
} } public ResultSet executeQuery(String query) // 查询
{
ResultSet rs = null;
try {
rs = state.executeQuery(query);
} catch (SQLException sqle) {
message = "" + sqle;
}
return rs;
} public void executeUpdate(String update) { try {
state.executeUpdate(update);
} catch (SQLException sqle) {
message = "" + sqle;
}
} public void close() {
try {
conn.close();
} catch (SQLException sqle) {
message = "" + sqle;
}
}
}
程序如下:package db;import java.sql.*;public class DBClass {
private String driver;
private String url;
private String name;
private String password;
private Connection conn;
private Statement state;
private String message = ""; public DBClass() {
driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=JPKC";
name = "";
password = "";
conn = null;
state = null;
message = "";
} public DBClass(String driver, String url, String name, String password,
Connection conn, Statement state, String message) {
super();
this.driver = driver;
this.url = url;
this.name = name;
this.password = password;
this.conn = conn;
this.state = state;
this.message = message;
} public String getDriver() {
return driver;
} public void setDriver(String driver) {
this.driver = driver;
} public String getUrl() {
return url;
} public void setUrl(String url) {
this.url = url;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public Connection getConn() {
return conn;
} public void setConn(Connection conn) {
this.conn = conn;
} public Statement getState() {
return state;
} public void setState(Statement state) {
this.state = state;
} public String getMessage() {
return message;
} public void setMessage(String message) {
this.message = message;
} public void connect() {
try {
Class.forName(driver);
conn = DriverManager.getConnection(url, name, password);
state = conn.createStatement();
} catch (ClassNotFoundException cnfe) {
message = "" + cnfe;
} catch (SQLException sqle) {
message = "" + sqle;
} } public ResultSet executeQuery(String query) // 查询
{
ResultSet rs = null;
try {
rs = state.executeQuery(query);
} catch (SQLException sqle) {
message = "" + sqle;
}
return rs;
} public void executeUpdate(String update) { try {
state.executeUpdate(update);
} catch (SQLException sqle) {
message = "" + sqle;
}
} public void close() {
try {
conn.close();
} catch (SQLException sqle) {
message = "" + sqle;
}
}
}
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class DBCon {
public static String driver="oracle.jdbc.driver.OracleDriver";
public static String url="jdbc:oracle:thin:@192.168.0.174:1521:ORCL";
public static String user="scott";
public static String pwd="tiger";
public static Connection getConnection(){
try {
Class.forName(driver);
Connection con=DriverManager.getConnection(url, user, pwd);
System.out.println("con success");
return con;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
public static void close(Connection con,Statement stm,ResultSet rs){
if(con!=null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(stm!=null){
try {
stm.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void main(String[] args) {
DBCon.getConnection();
}
}
+"\'"+pwd+"\'"+","
+"\'"+name+"\'"+","
+"\'"+sex+"\'"+","
+"\'"+tel+"\'"+","
+"\'"+email+"\'"+","
+"\'"+dept+"\'"+")";
DBClass db=new DBClass();
db.connect();
db.executeUpdate(sql);
db.close();
我用的是window xp 的系统,eclipse+tomcat 开发的,没有打补丁,
我看网上说的也可以不打补丁
修改了一下,还是出现这个错误:Exception in thread "main" java.lang.NullPointerException
at db.DBClass.executeQuery(DBClass.java:117)
at db.DBClass.main(DBClass.java:155)package db;import java.sql.*;public class DBClass {
private String driver;
private String url;
private String name;
private String password;
private Connection conn;
private Statement state;
private String message = ""; public DBClass() {
driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=JPKC";
name = "";
password = "";
conn = null;
state = null;
message = "";
} public DBClass(String driver, String url, String name, String password,
Connection conn, Statement state, String message) {
super();
this.driver = driver;
this.url = url;
this.name = name;
this.password = password;
this.conn = conn;
this.state = state;
this.message = message;
} public String getDriver() {
return driver;
} public void setDriver(String driver) {
this.driver = driver;
} public String getUrl() {
return url;
} public void setUrl(String url) {
this.url = url;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public Connection getConn() {
return conn;
} public void setConn(Connection conn) {
this.conn = conn;
} public Statement getState() {
return state;
} public void setState(Statement state) {
this.state = state;
} public String getMessage() {
return message;
} public void setMessage(String message) {
this.message = message;
} public void connect() {
try {
Class.forName(driver);
if (conn == null) {
conn = DriverManager.getConnection(url, name, password);
}
if (state == null) {
state = conn.createStatement();
}
} catch (ClassNotFoundException cnfe) {
message = "" + cnfe;
} catch (SQLException sqle) {
message = "" + sqle;
} } public ResultSet executeQuery(String query) // 查询
{
ResultSet rs = null;
try {
rs = state.executeQuery(query);
} catch (SQLException sqle) {
message = "" + sqle;
}
return rs;
} public int executeUpdate(String update) {
int flag = 1;
try {
flag = state.executeUpdate(update);
} catch (SQLException sqle) {
message = "" + sqle;
}
return flag;
} public void close() { if (conn != null) {
try {
conn.close();
} catch (SQLException sqle) {
message = "" + sqle;
}
}
if (state != null) {
try {
state.close();
} catch (SQLException sqle) {
message = "" + sqle;
}
}
}
public static void main(String args[]){
DBClass db=new DBClass();
db.connect();
ResultSet st = db.executeQuery("select * from userinfo");
try {
while (st.next()) {
System.out.println("TestName:"+st.getString("1") + " <BR/>");
}
} catch (SQLException e) {
e.printStackTrace();
}
db.close();
}
}
你为什么不用一个实体包(entity),一个javaBean
你这样写不利于代码阅读,不利于找错
我是在bean中加了个Main()方法。方便测试!
请大家帮帮忙!
ResultSet st = db.executeQuery("select * from userinfo");
这个方法没有执行吧