中文国产日韩欧美视频,午夜精品999,色综合天天综合网国产成人网,色综合视频一区二区观看,国产高清在线精品,伊人色播,色综合久久天天综合观看

tomcat 6.0配置oracle數(shù)據(jù)庫連接池 -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.szmdbiao.com - 電腦資料】

    tomcat 5.X與tomcat 6.x連接池配置有所不同,這里只是記錄tomcat 6.0的配置過程,

tomcat 6.0配置oracle數(shù)據(jù)庫連接池

。

    容器:tomcat 6.0

    數(shù)據(jù)庫:oracle 10g

    操作步驟:

    1、

    將oracle數(shù)據(jù)庫的驅(qū)動包ojdbc6.jar放到tomcat 6.0/lib,否則運行會報java.lang.ClassNotFoundException異           常,而且你在java Build Path->Libraries->Add JARs把驅(qū)動包加進來也還是會報錯的,一定要把驅(qū)動包加                     到tomcat/lib里面來;

    2、

    在tomcat的配置文件(context.xml)加入數(shù)據(jù)庫連接信息

   

    driverClassName="oracle.jdbc.driver.OracleDriver"

    url="jdbc:oracle:thin:@192.168.20.90:1521:carddb"

    username="card_settle"

    password="card_settle"

    maxActive="20"

    maxIdle="10"

    maxWait="10000" />

    屬性說明:

    name,數(shù)據(jù)源名稱,通常取"jdbc/xxx"的格式

    auth,這個不需要修改,取默認值

    type,值為"javax.sql.DataSource",使用數(shù)據(jù)源的方式

    driverClassName,數(shù)據(jù)庫驅(qū)動

    url,訪問數(shù)據(jù)庫的路徑信息,carddb是oracle數(shù)據(jù)庫的SID

    maxActive,連接池的最大數(shù)據(jù)庫連接數(shù),設(shè)為0表示無限制

    maxIdle,數(shù)據(jù)庫連接的最大空閑時間,超過空閑時間,數(shù)據(jù)庫連接將被標記為不可用,然后被釋放。設(shè)為0表示無限制

    maxWait,最大建立連接等侍時間,如果超過此時間,將接到異常,如果設(shè)為-1表示無限制

    3.程序中需要數(shù)據(jù)庫連接的地主,編寫如下代碼:

    Java代碼

    import javax.naming.Context;

    import javax.naming.InitialContext;

    import javax.naming.NamingException;

    import javax.sql.DataSource;

    public class DataSourceTest{

    public static Connection getCon(){

    Connection conn = null;

    try{

    Context ctx = new InitialContext();

    DataSource ds = (DataSource) ctx.lookup("java:/comp/env/jdbc/zhx");

    conn = ds.getConnection();

    }catch(NamingException e){

    e.printStackTrace();

    } catch(SQLException e){

    e.printStackTrace();

    }

    return conn;

    }

    }

    import javax.naming.Context;

    import javax.naming.InitialContext;

    import javax.naming.NamingException;

    import javax.sql.DataSource;

    public class DataSourceTest{

    public static Connection getCon(){

    Connection conn = null;

    try{

    Context ctx = new InitialContext();

    DataSource ds = (DataSource) ctx.lookup("java:/comp/env/jdbc/zhx");

    conn = ds.getConnection();

    }catch(NamingException e){

    e.printStackTrace();

    } catch(SQLException e){

    e.printStackTrace();

    }

    return conn;

    }

    }

    使用完后,記得要調(diào)用close()方法,它并不是真正地關(guān)閉連接,而是釋放出來,讓它重新回到連接池,

電腦資料

tomcat 6.0配置oracle數(shù)據(jù)庫連接池》(http://www.szmdbiao.com)。

    附:

    連接池運作原理:

    在實際應(yīng)用開發(fā)中,特別是在WEB 應(yīng)用系統(tǒng)中,如果JSP、Servlet 或EJB 使用JDBC 直 接訪問數(shù)據(jù)庫中的數(shù)據(jù),每一次數(shù)據(jù)訪問請求都必須經(jīng)歷建立數(shù)據(jù)庫連接、打開數(shù)據(jù)庫、存取數(shù)據(jù)和關(guān)閉數(shù)據(jù)庫連接等步驟,而連接并打開數(shù)據(jù)庫是一件既消耗資源又費時的工作,如果頻繁發(fā)生這種數(shù)據(jù)庫操作,系統(tǒng)的性能必然會急劇下降,甚至會導致系統(tǒng)崩潰。數(shù)據(jù)庫連接 池技術(shù)是 解決這個問題最常用的方法,在許多應(yīng)用程序服務(wù)器( 例 如 :Weblogic, WebSphere,JBoss)中,基本都提供了這項技術(shù),無需自己編程,但是,深入了解這項技術(shù) 是非常必要的。

    數(shù)據(jù)庫連接池技術(shù)的思想非常簡單, 將數(shù)據(jù)庫連接作為對象存儲在一個Vector對象中,一旦數(shù)據(jù)庫連接建立后,不同的數(shù)據(jù)庫訪問請求就可以共享這些連接,這樣,通過復用這些 已經(jīng)建立的數(shù)據(jù)庫連接,可以克服上述缺點,極大地節(jié)省系統(tǒng)資源和時間。

    數(shù)據(jù)庫連接池的主要操作如下:

    (1)建立數(shù)據(jù)庫連接池對象(服務(wù)器啟動)。

    (2)按照事先指定的參數(shù)創(chuàng)建初始數(shù)量的數(shù)據(jù)庫連接(即:空閑連接數(shù))。

    (3)對于一個數(shù)據(jù)庫訪問請求,直接從連接池中得到一個連接。如果數(shù)據(jù)庫連接池對象 中沒有空閑的連接,且連接數(shù)沒有達 到最大(即:最大活躍連接數(shù)) ,創(chuàng)建一個新的數(shù)據(jù)庫 連接。   (4)存取數(shù)據(jù)庫。

    (5)關(guān)閉數(shù)據(jù)庫,釋放所有數(shù)據(jù)庫連接(此時的關(guān)閉數(shù)據(jù)庫連接,并非真正關(guān)閉,而是將其放入空閑隊列中。如實際空閑連接數(shù)大于初始空閑連接數(shù)則釋放連接)。

    (6)釋放數(shù)據(jù)庫連接池對象(服務(wù)器停止、維護期間,釋放數(shù)據(jù)庫連接池對象,并釋放所有連接) 。

最新文章