關於tomcat連線池問題

2021-05-22 00:47:06 字數 1142 閱讀 4765

好久沒有親自寫**了,基本都是從自己多年來積累的一些源程式直接拷貝、修改。

但近來幫朋友做個小辦公系統時,發現乙個奇怪的現象,特此寫出來,供自己日後備忘,同時,也給遇到相同問題的同行乙個參考。

在tomcat5.0中,我部署的連線池是可以正常使用的,但到了6.0就報出錯誤:

org.apache.tomcat.dbcp.dbcp.sqlnestedexception: cannot create jdbc driver of class '' for connect url 'null'

資料庫為mssql server 2000sp2,配置**為(server.xml部分):

factory

org.apache.commons.dbcp.basicdatasourcefactory

maxactive

150maxidle

150maxwait

10000

username

sapassword

123removeabandoned

true

removeabandonedtimeout

20logabandoned

true

driverclassname

net.sourceforge.jtds.jdbc.driver

urljdbc:jtds:sqlserver://192.168.1.175:1433/tan

問題搞懵了!!難道6.0不相容5.0???

將原來的專案放到6.0下,竟然也報同樣的錯誤!!

沒辦法了,看看doc(http://127.0.0.1:8080/docs/jndi-datasource-examples-howto.html

直接從它上面複製示例**,修改路徑、驅動、使用者和密碼等,如下:

儲存後,啟動tomcat,測試頁開啟了!!

高興的同時,不僅要問:為什麼?why?なぜ?

對比上面兩種寫法,前者比後者多了幾個引數,各個去掉,測試,不行!全部去掉,還是不行!

乙個非常極端的想法從我心底產生了!難道6.0中不支援第一種寫法了!!

應該不會吧!相容,一直是我們軟體開發的乙個重要點啊!

時間精力都有限,這個問題暫時留下。

連線池與使用Tomcat的連線池

what is connection pool?看圖 1 存放connection物件的容器 2 減少連線資料庫的開銷 3 程式請求連線時,在connection pool中取連線 4 連線使用完後,放回connection pool,不釋放 5 connection pool對連線進行管理 計數 ...

tomcat 連線池配置

maxidle,最大空閒數,資料庫連線的最大空閒時間。超過空閒時間,資料庫連線將被標記為不可用,然後被釋放。設為0表示無限制。maxactive,連線池的最大資料庫連線數。設為0表示無限制。maxwait 最大建立連線等待時間。如果超過此時間將接到異常。設為 1表示無限制。maxactive 最大連...

連線池問題

connection耗盡不一定就是由connection leak引起,如果你的執行佇列中線程數設定的比connection pool大,而且你的某些程式占用connection時間過長,致使執行佇列中的執行緒已經把connection pool中的所有的connection都申請出來了,此時如果再...