JAVA的数据库JAVA的数据库
给你一段代码:
private static String oracleUrlToConnect = null;
/** 数据库驱动* */
private static String oracleDriverName = "oracle。 jdbc。driver。OracleDriver";
/** 数据库用户名* */
private static String dbusername = null;
/** 数据库密码* */
private static String dbpassword = null;
/**声明Connection对象的实例* */
private stati...全部
给你一段代码:
private static String oracleUrlToConnect = null;
/** 数据库驱动* */
private static String oracleDriverName = "oracle。
jdbc。driver。OracleDriver";
/** 数据库用户名* */
private static String dbusername = null;
/** 数据库密码* */
private static String dbpassword = null;
/**声明Connection对象的实例* */
private static Connection _conn = null;
/**声明Statement对象的实例**/
public Statement stmt = null;
/**声明ResultSet对象的实例**/
public ResultSet rs = null;
// 使用ThreadLocal解决线程问题
private static ThreadLocal currentConnection = new ThreadLocal();
// 返回一个Connection资源,这是每一个线程都可以独立地改变自己的副本,而不会影响其它线程所对应的副本
public Connection getConnection(String url, String driver, String username,
String password) throws Exception {
_conn = t();
if (null != url && !""。
equals(url)) {
oracleUrlToConnect = url;
}
if (null != driver && !""。equals(driver)) {
oracleDriverName = driver;
}
if (null != username && !""。
equals(username)) {
dbusername = username;
}
if (null != password && !""。equals(password)) {
dbpassword = password;
}
try {
//注册驱动
rName(oracleDriverName);
} catch (ClassNotFoundException e) {
intStackTrace();
}
//建立与数据库的链接
_conn = tConnection(oracleUrlToConnect, dbusername,
dbpassword);
if (_conn == null) {
rName(oracleDriverName);
_conn = tConnection(oracleUrlToConnect, dbusername,
dbpassword);
t(_conn);
r
。
println("警告: tConnection() 获得数据库链接失败。\r\n\r\n链接类型:"
+ "\r\n链接位置:"
+ oracleUrlToConnect
+ "\r\n用户/密码"
+ dbusername + "/" + dbpassword);
}
return _conn;
}
/*
* 功能:执行查询语句
*/
public ResultSet executeQuery(String sql) {
try { // 捕捉异常
// 调用getConnection()方法构造Connection对象的一个实例conn
if (_conn != null) {
stmt = _ eateStatement(ResultSet。
TYPE_SCROLL_INSENSITIVE,//3。创建语句
ResultSet。CONCUR_READ_ONLY);
rs = stmt。executeQuery(sql);//4。
执行查询
}
} catch (SQLException ex) {
intln( tMessage()); // 输出异常信息
}
return rs; // 返回结果集对象 5。
结果处理
}
/*
* 功能:执行更新操作
*/
public int executeUpdate(String sql) {
int result = 0; // 定义保存返回值的变量
try { // 捕捉异常
//调用getConnection()方法构造Connection对象的一个实例conn
if (_conn != null) {
stmt = _ eateStatement(ResultSet。
TYPE_SCROLL_INSENSITIVE,
ResultSet。CONCUR_READ_ONLY);
result = stmt。executeUpdate(sql); // 执行更新操作
}
} catch (SQLException ex) {
result = 0; // 将保存返回值的变量赋值为0
}
return result; // 返回保存返回值的变量
}
/*
* 功能:关闭数据库的连接
*/
public void close() {//6。
释放资源
try { // 捕捉异常
try {
if (rs != null) { // 当ResultSet对象的实例rs不为空时
ose(); // 关闭ResultSet对象
}
} finally {
try {
if (stmt != null) { // 当Statement对象的实例stmt不为空时
ose(); // 关闭Statement对象
}
} finally {
if (_conn != null) { // 当Connection对象的实例conn不为空时
_ ose(); // 关闭Connection对象
}
}
}
} catch (Exception e) {
intStackTrace( r); // 输出异常信息
}
}。
收起