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

/**
  封装了对数据库的连接,用于处理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 PassWord 用户密码
  */
  public OraPooledSQL(String ConnectionURL,String UserID,String PassWord)
  {
  
  try{
  
  OracleConnectionPoolDataSource 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  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值