内容:
换了一个工程就可以跑得动
报错:
java.lang.NumberFormatException: For input string: "20 "
at java.base/java.lang.NumberFormatException.forInputString(Unknown Source)
at java.base/java.lang.Integer.parseInt(Unknown Source)
at java.base/java.lang.Integer.parseInt(Unknown Source)
at org.apache.commons.dbcp.BasicDataSourceFactory.createDataSource(BasicDataSourceFactory.java:228)
at com.ekihin.part01.day20.DBCPDemo.<clinit>(DBCPDemo.java:21)
at com.ekihin.part01.day20.DBCPDemoTest.main(DBCPDemoTest.java:15)
Exception in thread "main" java.lang.NullPointerException
at com.ekihin.part01.day20.DBCPDemo.getConnection(DBCPDemo.java:29)
at com.ekihin.part01.day20.DBCPDemoTest.main(DBCPDemoTest.java:15)
类:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class DBCPDemoTest {
public static void main(String[] args) throws Exception {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
String sql = "Update emp set ename = ? where ename = ? ";
conn = DBCPDemo.getConnection();
ps = conn.prepareStatement(sql);
ps.setObject(1, "彭奕滨");
ps.setObject(2, "ekihin");
int rows = 0;
rows = ps.executeUpdate();
System.out.println(rows);
DBCPDemo.closeAll(conn, ps, rs);
}
}
import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
import javax.sql.DataSource;
import org.apache.commons.dbcp.BasicDataSourceFactory;
public class DBCPDemo {
private static DataSource ds = null;
static {
Properties pt = new Properties();
try {
pt.load(DBCPDemo.class.getClassLoader().getResourceAsStream("dbcpconfig.properties"));
ds = BasicDataSourceFactory.createDataSource(pt);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static Connection getConnection() throws SQLException{
//返回一个连接对象,不要用DriverManager获取,而是连接池中获取
return ds.getConnection();
}
//关闭所有资源的统一代码
public static void closeAll(Connection conn,Statement st,ResultSet rs){
//负责关闭
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(st != null){
try {
st.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();
}
}
}
}