將功能整合在一個類中
package pb.base;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PReparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import pb.until.ConfigManager;public class Base { public Connection conn; public PreparedStatement pstmt; public Statement stmt; public ResultSet rs; //建立連接 public boolean getConnection(){ // 獲取DRIVER,url,用戶名密碼 String driver = ConfigManager.getintance().getvalue("jdbc.driver"); String url = ConfigManager.getintance().getvalue("jdbc.url"); String uname = ConfigManager.getintance().getvalue("jdbc.uname"); String pwd = ConfigManager.getintance().getvalue("jdbc.upwd"); // (1)使用Class.forName()加載驅動 try { Class.forName(driver); // (2)DriverManager.getConnection(URL,用戶名,密碼)獲取數據庫的連接Connection // Oracle連接方式jdbc:oracle:thin:@localhost:1521:orcl conn = DriverManager.getConnection(url, uname, pwd); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; }catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } return true; } //增加,修改,刪除 public int executeUpdate(String sql,Object [] pararm){ int UpdateRow=0; getConnection(); try { pstmt=conn.prepareStatement(sql); //遍歷數組設置每個值 for(int i=0;i<pararm.length;i++){ pstmt.setObject(i+1, pararm[i]); } UpdateRow = pstmt.executeUpdate(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return UpdateRow; } //查詢 public ResultSet executeSQL(String sql,Object [] pararm){ getConnection(); try { pstmt=conn.prepareStatement(sql); //遍歷數組設置每個值 for(int i=0;i<pararm.length;i++){ pstmt.setObject(i+1, pararm[i]); } rs = pstmt.executeQuery(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return rs; } //關閉數據庫連接 public boolean CloseConnection(){ try { if(rs!=null){ rs.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } try { if(stmt!=null){ stmt.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } try { if(pstmt!=null){ pstmt.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } try { if(conn!=null){ conn.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } return true; }}
新聞熱點
疑難解答