package com.hhy.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* 得到可用连接
* @author hhy
*
*/
public class BaseDao {
public Connection getConn(){
Connection conn=null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL","adus","adus");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
/**
* 增删改通用
* @param sql
* @param objects
* @return
*/
public boolean Update(String sql,Object...objects){
Connection conn=getConn();
PreparedStatement pstmt=null;
try {
pstmt=conn.prepareStatement(sql);
if(objects!=null){
for (int i = 0; i < objects.length; i++) {
pstmt.setObject(i+1, objects[i]);
}
}
return pstmt.executeUpdate()>0;
} catch (SQLException e) {
e.printStackTrace();
return false;
}finally{
closeAll(conn, pstmt, null);
}
}
/**
* 查询方法
* @param sql
* @param objects
* @return
*/
public ResultSet Query(String sql,Object...objects){
Connection conn=getConn();
PreparedStatement pstmt=null;
try {
pstmt=conn.prepareStatement(sql);
if(objects!=null){
for (int i = 0; i < objects.length; i++) {
pstmt.setObject(i+1, objects[i]);
}
}
return pstmt.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
/**
* 关闭连接
* @param conn
* @param stmt
* @param rs
*/
public void closeAll(Connection conn,Statement stmt,ResultSet rs){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(stmt!=null){
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}