久久―日本道色综合久久,亚洲欧美精品在线,狼狼色丁香久久婷婷综合五月,香蕉人人超,日本网站黄,国产在线观看不卡免费高清,无遮挡的毛片免费

2023信創(chuàng)獨角獸企業(yè)100強
全世界各行各業(yè)聯(lián)合起來,internet一定要實現(xiàn)!

數(shù)據(jù)庫BEAN:RESIN連接池

2004-02-11 eNet&Ciweek

  JSP初學者一用到數(shù)據(jù)庫都會遇到數(shù)據(jù)庫連接BEAN的問題。

  并且對初學者也推薦用RESIN做服務器,配置簡單(開發(fā)不需要配置APACHE)。

  所以把我自己在用的數(shù)據(jù)庫連接BEAN發(fā)出來來,供參考。

  由于RESI本身也提供了連接池,就更省事了,訪問量不大時都夠了。   

   * 數(shù)據(jù)庫連接 bean ,用來連接 resin 的連接池

  package net.asales.mysql;

  import java.sql.Connection;

  import java.sql.Statement;

  import java.sql.ResultSet;

  import java.sql.SQLException;

  import javax.sql.DataSource;

  import javax.naming.Context;

  import javax.naming.InitialContext;

  

  public class DBConnection {

   private Connection conn = null;

   private Statement stmt = null;

   private ResultSet rs = null;

   private int resultNum = 0;

  

   /**

   * 構(gòu)造函數(shù)

   * 找到數(shù)據(jù)源,并用這個數(shù)據(jù)源創(chuàng)建連接

   */

   public DBConnection() {

   try {

   Context env = new InitialContext();

   DataSource pool = (DataSource) env.lookup

          ("java:comp/env/jdbc/asales");

   if (pool == null)

   throw new Exception("jdbc/asales is

           an unknown DataSource");

   conn = pool.getConnection();

   stmt = conn.createStatement();

   } catch (Exception e) {

   System.out.println("naming:" + e.getMessage());

   }

   }

  

   * 執(zhí)行SQL語句:查詢記錄

   * @param sql SQL語句

   * @return ResultSet 記錄集

    public ResultSet executeQuery(String sql) {

   rs = null;

   try {

   rs = stmt.executeQuery(sql);

   } catch(SQLException se) {

   System.out.println("Query error:" + se.getMessage());

   }

   return rs;

   }

  

   /**

   * 執(zhí)行SQL語句 :插入與更新記錄

   * @param sql SQL語句

   * @return int resultNum 更新的記錄數(shù)

   */

   public int executeUpdate(String sql) {

   resultNum=0;

   try {

   resultNum = stmt.executeUpdate(sql);

   } catch (SQLException se) {

   System.err.println("Update error:" + se.getMessage());

   }

   return resultNum;

   }

   /**

   * 關閉連接

   */

   public void close() {

   try {

   if (rs != null) {

   rs.close();

   rs = null;

   }

   if (stmt != null) {

   stmt.close();

   stmt = null;

   }

   if (conn != null) {

   conn.close();

   conn = null;

   }

   } catch (SQLException se) {

   System.out.println("close error: " + se.getMessage());

   }

   }

  }

  

  以下是RESIN配置文件中關于數(shù)據(jù)源的配置例:

  

   jdbc/asales

   javax.sql.DataSource

  

  

  

  

  

  

  


相關頻道: eNews

您對本文或本站有任何意見,請在下方提交,謝謝!

投稿信箱:tougao@enet16.com