JNDIコンテキストを使用して、Tomcatのcontext.xmlファイルにJDBCドライバーのデータソースを次のように作成します。
<Resource name="db/test"
type="javax.sql.DataSource"
driverClassName="com.test.jdbc.Driver"
url="jdbc:fastdb://localhost:3306/session_db?autoReconnect=true&connectTimeout=5000&socketTimeout=5000"
zeroDateTimeBehavior="convertToNull"
username="dbuser"
password="password"
maxActive="100"
maxWait="2"
removeAbandoned="true"
removeAbandonedTimeout="60"
logAbandoned="true" />
デフォルトでは、TomcatはDBCPデータソースファクトリと作成されたプーリングデータソースを使用します。私たちが使用する特定のデータベースとドライバーは、すでに下位レベルでのプーリングをサポートしており、余分なプーリングは実際にパフォーマンスを低下させます。このようなJNDIリソースを使用して(プールせずに)基本的なデータソースを作成して、最小限の構成変更で異なるデータベースを切り替えることができるようにする方法はありますか?
独自のデータソースファクトリを作成することも、他のドライバのファクトリを使用してこれを実現することもできますが、より簡単なソリューションを探しています。