利用Oracle自带的连接池类的一例 (转)

利用Oracle自带的连接池类的一例 (转)[@more@]/**
封装了对 数据库的连接,用于处理 sql语句。
@author:yancheng(sharetop studio)
@version:1.0.0
*/
package dbUtil;

import Java.sql.*;
import java.io.*;
import javax.sql.*;
import javax.naming.*;
import ORACLE. JDBC.pool.*;

public class OraPooledSQL
{

private PooledConnection dbpool;

/**
@param ConnectionURL 连接名 如: jdbc:odbc:myODBC
@param UserID 用户
@param Pass word 用户密码
*/
public OraPooledSQL(String ConnectionURL,String UserID,String PassWord)
{

try{

OracleConnectionPoolData source ocpds = new OracleConnectionPoolDataSource();

ocpds.setURL(ConnectionURL);

ocpds.setUser(UserID);

ocpds.setPassword(PassWord);

dbpool = ocpds.getPooledConnection();

}
catch(Exception ex)
{
System.err.println("Error in PooledSQL-construct : ");
ex.printStackTrace(System.err);
}

}//end OraPooledSQL

//close dbpool
protected void finalize()
{
if( dbpool != null )
{
try
{
dbpool.close();
}
catch(Exception ex)
{
}
}
}

/**
用于 更新、添加或删除的SQL语句
@param SQL SQL语句字串,如:insert into tablename values(id,......)
*/
public int Update(String SQL)
{
Statement stmt = null;
int rc = 0;

Connection connection = null;

try
{
connection = dbpool.getConnection();
stmt = connection.createStatement();
rc = stmt.executeUpdate(SQL);
}

catch( Exception ex )
{
System.err.println("Error in Update - OraPooledSQL : ");
ex.printStackTrace(System.err);
}

return rc;

} //end Update()


/**
用于查询的SQL语句
@param SQL SQL语句字串,如: select * from tablename
*/
public ResultSet Query(String SQL)
{
Statement stmt = null;
ResultSet rs = null;
Connection connection = null;

try
{
connection = dbpool.getConnection();
stmt = connection.createStatement();
rs = stmt.executeQuery(SQL);
}

catch( Exception ex )
{
System.err.println("Error in Query - SQLBean : ");
ex.printStackTrace(System.err);
}

return rs;

} //end Query

} //end Class

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-987878/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10752043/viewspace-987878/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值