關於C3P0連接池的初始應用

  1. //初始應用
    import java.beans.PropertyVetoException;
  2. import java.sql.Connection;
  3. import java.sql.SQLException;

  4. import cn.wobushisheng.Setting;

  5. import com.nikandaosmle.htm.HtmConfig;
  6. import com.mchange.v2.c3p0.ComboPooledDataSource;
  7. import com.mchange.v2.c3p0.DataSources;

  8. public class DBFactoryPool {

  9.     ComboPooledDataSource cpds = new ComboPooledDataSource();
  10.     HtmConfig config = (HtmConfig) Setting.appconfig;
  11.     String driverURL = config.jdbcDriver;
  12.     String connURL = config.jdbcUrl;
  13.     String user = config.jdbcUser;
  14.     String passwd = config.dbcPaswd;
  15.     String maxidle = config.jdbcMaxIdel;

  16.     public Connection getConnection() {
  17.         Connection conn = null;
  18.         try {
  19.             cpds.setDriverClass(driverURL);
  20.             cpds.setJdbcUrl(connURL);
  21.             cpds.setUser(user);
  22.             cpds.setPassword(passwd);
  23.             cpds.setMaxIdleTime(Integer.valueOf(maxidle));
  24.             cpds.setMaxStatements(0);
  25.             conn = cpds.getConnection();
  26.         } catch (PropertyVetoException e) {
  27.             e.printStackTrace();
  28.         } catch (SQLException e) {
  29.             e.printStackTrace();
  30.         }
  31.         return conn;
  32.     }

  33.     public void destory() {
  34.         try {
  35.             DataSources.destroy(cpds);
  36.         } catch (SQLException e) {
  37.             e.printStackTrace();
  38.         }
  39.     }
  40. }

上面是這個連接類,下面是具體。

  1. import java.sql.Connection;
  2. import java.sql.SQLException;
  3. import java.sql.Statement;
  4. public class M_UserManagerImp implements M_UserManager {
  5.     public void save(Operator operator) {
  6.         Connection conn = null;
  7.         Statement sta = null;
  8.         DBFactoryPool dbpool;
  9.         dbpool = new DBFactoryPool();
  10.         try {
  11.             conn = dbpool.getConnection();
  12.             sta = conn.createStatement();
  13.             // 標籤沒INSERT
  14.             StringBuffer sql = new StringBuffer(
  15.                     "insert into m_user_info(USER_ID,USER_NAME,USER_ROLE,PASSWORD) values(");
  16.             sql.append("'").append(operator.getLoginid()).append("',");
  17.             sql.append("'").append(operator.getName()).append("',");
  18.             sql.append(operator.getRoleno()).append(",");
  19.             sql.append("'").append(operator.getPasswd()).append("')");
  20.             sta.executeUpdate(sql.toString());
  21.             conn.commit();
  22.             conn.close();
  23.         } catch (SQLException e) {
  24.             e.printStackTrace();
  25.         } finally {
  26.             dbpool.destory();
  27.         }
  28.     }
  29. }
NICE

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章