【发布时间】:2014-07-08 08:21:47
【问题描述】:
这是我第一次尝试在tomcat(版本8)中设置连接池,我有点困惑。看来我有 2 个选项可供使用,1)我可以添加类似的内容:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<!-- Specify a JDBC datasource for oracle -->
<Resource name="jdbc/testdb"
auth="Container"
type="javax.sql.DataSource"
username="DB_USERNAME"
password="DB_PASSWORD"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@xxx:1525:dbname"
maxActive="10"
maxIdle="4" />
</Context>
在我的项目 WEB-INF 文件夹中名为“context.xml”的文件中。 或,2)我可以添加如下内容:
<Context path="/dbcp" docBase="dbcp" debug="5"
reloadable="true" crossContext="true">
<Resource name="jdbc/TestDB" auth="Container"
type="javax.sql.DataSource" removeAbandoned="true"
removeAbandonedTimeout="30" maxActive="100"
maxIdle="30" maxWait="10000" username="kunal"
password="java_facier"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/dbcptest"/>
</Context>
在 TOMCAT_HOME/conf/sever.xml 中,然后添加:
<resource-ref>
<description> DB Connection Pooling</description>
<res-ref-name> jdbc/TestDB</res-ref-name>
<res-type> javax.sql.DataSource</res-type>
<res-auth> Container</res-auth>
</resource-ref>
到我项目中的 WEB-INF/web.xml 文件...
如果我在这两种情况下都是正确的,那么使用哪一种更好?另外我应该把我的数据库供应商 jdbc-driver 放在哪里?
【问题讨论】:
-
如果只有一个 Web 应用程序会使用,那么我看不出你为什么要将它放在 server.xml 中。你越少搞这个越好。
-
感谢@ScaryWombat,这确实有道理。那么我应该把我的数据库供应商的 JDBC 驱动程序放在哪里呢?如果我使用 maven,我可以在我的 pom.xml 中指定它?
-
我个人当然会使用 maven 去 WEB-INF/lib。
标签: java sql eclipse tomcat connection-pooling