在讀了一些servlet體系結構,tomcat機制和數據庫池之後,我想知道我是否真的應該在我的servlet的init中打開一個連接(並在destroy中關閉)? 我的目標是實現高性能,所以我想我應該使用連接池。 一開始我使用tomcat的內置數據庫池機制。建議在servlet的init()和destroy()中使用get/close DB連接嗎?
的context.xml
<Context>
<Resource name="jdbc/mytest" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="userxy" password="xy" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/mytest"/>
</Context>
網站XML:
<resource-ref>
<description>MyTest</description>
<res-ref-name>jdbc/mytest</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
我確信我可以通過某事物easilly更換如果需要的話。 所以我的問題是:我應該使用而不是serlet的init()/ destroy()每個請求稱爲doGet()並信任池機制? 什麼,如果我同時使用?
在servlet的生命週期中保持連接打開幾乎肯定是一個壞主意。 –
你爲什麼不相信游泳池?這是有原因的,使用它。 – AngerClown