Util类:
package com.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
public class DBUtil {
private static DBUtil dbUtil=null;
private final String DRIVER="oracle.jdbc.driver.OracleDriver";
private final String url="jdbc:oracle:thin:@localhost:1521:orcl";
private final String user="ndy";
private final String psw="123456";
public Connection conn=null;
PreparedStatement pstm=null;
ResultSet rs=null;
public static DBUtil newInstance(){
if(dbUtil==null){
dbUtil=new DBUtil();
}
return dbUtil;
}
public Connection getConnection(){
// try {
// Context context=new InitialContext();
// DataSource ds=(DataSource) context.lookup("java:comp/env/jdbc/easyui_pro");
// //从连接池获取连接
// conn=ds.getConnection();
// } catch (Exception e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
try {
Class.forName(DRIVER);
conn = DriverManager.getConnection(url, user, psw);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return conn;
}
public int sqlInsert(String sql){
int num=0;
conn=this.getConnection();
try {
pstm=conn.prepareStatement(sql);
num=pstm.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return num;
}
public int sqlInsert(String sql,Object[] param){
int num=0;
conn=this.getConnection();
try {
pstm=conn.prepareStatement(sql);
setParam(pstm, param);
num=pstm.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return num;
}
public int sqlDelete(String sql){
conn=this.getConnection();
int num=0;
try {
pstm=conn.prepareStatement(sql);
num=pstm.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
this.pstmClose();
}
return num;
}
public int sqlDelete(String sql,Object[] param){
conn=this.getConnection();
int num=0;
try {
pstm=conn.prepareStatement(sql);
setParam(pstm, param);
num=pstm.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
this.pstmClose();
}
return num;
}
public int sqlUpdate(String sql){
return sqlUpdate(sql, null);
}
public int sqlUpdate(String sql,Object[] objects){
int num=0;
try {
conn=this.getConnection();
pstm=conn.prepareStatement(sql);
setParam(pstm, objects);
num=pstm.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}finally{
this.pstmClose();
this.connClose();
}
return num;
}
public ResultSet sqlQuery(String sql){
return sqlQuery(sql, null);
}
public ResultSet sqlQuery(String sql,Object[] objects){
ResultSet rs=null;
try {
conn=this.getConnection();
pstm=conn.prepareStatement(sql);
if(objects!=null){
for(int i=0;i<objects.length;i++){
pstm.setObject(i+1, objects[i]);
}
}
rs=pstm.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
}
return rs;
}
private void setParam(PreparedStatement pstm,Object[] objects) throws SQLException{
if(objects!=null){
for(int i=0;i<objects.length;i++){
pstm.setObject(i+1, objects[i]);
}
}
}
public void connClose(){
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void rsClose(){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public void pstmClose(){
if(pstm!=null){
try {
pstm.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}