亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java配置數(shù)據(jù)庫連接池的方法步驟

 更新時間:2013年05月11日 10:45:48   作者:  
java配置數(shù)據(jù)庫連接池的方法步驟,需要的朋友可以參考一下

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


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

數(shù)據(jù)庫連接池的主要操作如下:
(1)建立數(shù)據(jù)庫連接池對象(服務器啟動)。
(2)按照事先指定的參數(shù)創(chuàng)建初始數(shù)量的數(shù)據(jù)庫連接(即:空閑連接數(shù))。
(3)對于一個數(shù)據(jù)庫訪問請求,直接從連接池中得到一個連接。如果數(shù)據(jù)庫連接池對象中沒有空閑的連接,且連接數(shù)沒有達到最大(即:最大活躍連接數(shù)),創(chuàng)建一個新的數(shù)據(jù)庫連接。
(4)存取數(shù)據(jù)庫。
(5)關閉數(shù)據(jù)庫,釋放所有數(shù)據(jù)庫連接(此時的關閉數(shù)據(jù)庫連接,并非真正關閉,而是將其放入空閑隊列中。如實際空閑連接數(shù)大于初始空閑連接數(shù)則釋放連接)。
(6)釋放數(shù)據(jù)庫連接池對象(服務器停止、維護期間,釋放數(shù)據(jù)庫連接池對象,并釋放所有連接)。
配置步驟:
1.在Tomcat  conf/content.xml中<Context>節(jié)點內(nèi)添加如下內(nèi)容

<Resource name="jdbc/news" auth="Container"type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="sa" password="120010" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;DatabaseName=news"/>


name:之后我們要調(diào)用resource時候用到
type:是鏈接數(shù)據(jù)庫時候用到的java擴展包下的類
maxActive:最大連接數(shù)
maxIdle:是空閑時候最大連接數(shù)
maxwait:空閑判斷標準
注意:
1.該配置文件里不允許有中文;各個屬性間的用一個空格隔開
2.要將對應鏈接數(shù)據(jù)庫的jar包放到tomcat /lib文件夾中工程中就不需要存放了
下面還中是鏈接oracle的

<Resource type="javax.sql.DataSource" name="jdbc/news" url="jdbc:oracle:thin:@192.168.2.102:1521:orcl" driverClassName="oracle.jdbc.driver.OracleDriver" password="bg" username="test" maxWait="10000" maxIdle="30" maxActive="100" auth="Container"/>
2.在工程的web.xml中添加如下代碼
<resource-ref>
      <res-ref-name>jdbc/news</res-ref-name>
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
</resource-ref>

這里<res-ref-name>標簽里面的名字就是在content.xml文件中的name的名字


3.得到數(shù)據(jù)庫連接池中的Connection對象


Context context=new InitialContext();
DataSourceds=(DataSource)context.lookup("java:comp/env/jdbc/news");
Connectionconn = ds.getConnection();


context是javax.namingx下的類
dataSource是javax.sql下的類
"java:comp/env/jdbc/news"中:java:comp/env是固定寫法 jdbc/news是jndi名稱(Tomcat中配置的那個name)


如果我們不是在web.xml中配置數(shù)據(jù)源,我們用spring來控制數(shù)據(jù)庫鏈接方法步驟:
1.在配置文件中添加如下節(jié)點
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/news"/> 
</bean>

配置好了獲取sql語句查詢數(shù)據(jù)有多少條:


    調(diào)用的時候直接Dao類繼承JdbcDaoSupport類(spring.jar中的類)
    int count = this.getJdbcTemplate().queryForInt("select * from users");


這樣我們就搞定了!當然也許還有很多方法可以配置,我只列出上面幾種,要是有什么問題可以私密我我很樂意與大家一起討論!
----ydcun

相關文章

  • java之如何定義USB接口

    java之如何定義USB接口

    這篇文章主要介紹了java之如何定義USB接口問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Java在Linux下 不能處理圖形的解決辦法 分享

    Java在Linux下 不能處理圖形的解決辦法 分享

    Java在Linux下 不能處理圖形的解決辦法 分享,需要的朋友可以參考一下
    2013-06-06
  • 淺談導入JavaWeb 項目出現(xiàn)的問題

    淺談導入JavaWeb 項目出現(xiàn)的問題

    這篇文章主要介紹了導入JavaWeb 項目出現(xiàn)的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03
  • Java中由substring方法引發(fā)的內(nèi)存泄漏詳解

    Java中由substring方法引發(fā)的內(nèi)存泄漏詳解

    這篇文章主要介紹了Java中由substring方法引發(fā)的內(nèi)存泄漏詳解,涉及substring方法引發(fā)的內(nèi)存泄漏簡介,substring的作用和實現(xiàn)原理等相關內(nèi)容,具有一定借鑒價值,需要的朋友可以參考下
    2017-12-12
  • 詳細分析java并發(fā)之volatile關鍵字

    詳細分析java并發(fā)之volatile關鍵字

    這篇文章主要介紹了java并發(fā)之volatile關鍵字的的相關資料,文中代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-06-06
  • springBoot controller,service,dao,mapper,model層的作用說明

    springBoot controller,service,dao,mapper,model層的作用說明

    這篇文章主要介紹了springBoot controller,service,dao,mapper,model層的作用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java 8系列之Stream中萬能的reduce用法說明

    Java 8系列之Stream中萬能的reduce用法說明

    這篇文章主要介紹了Java 8系列之Stream中萬能的reduce用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Springboot整合pagehelper分頁功能

    Springboot整合pagehelper分頁功能

    這篇文章主要為大家詳細介紹了Springboot整合pagehelper分頁功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • java 多線程的幾種實現(xiàn)方法總結

    java 多線程的幾種實現(xiàn)方法總結

    這篇文章主要介紹了java 多線程的幾種實現(xiàn)方法總結的相關資料,希望通過本文能幫助到大家,讓大家掌握java多線程的知識,需要的朋友可以參考下
    2017-10-10
  • jar包沖突常用的解決方案

    jar包沖突常用的解決方案

    引言在使用java語言開發(fā),maven做項目管理時,我們經(jīng)常遇到一個頭疼的問題就是jar包沖突,這篇文章主要給大家介紹了關于jar包沖突常用的解決方案,需要的朋友可以參考下
    2023-12-12

最新評論