pleasureの日記: 【備忘録】データソースの設定...いまさら
日記 by
pleasure
古いライブラリ(自作)を使いまわしてきたのだが、
いい加減データソースを使ったものに変えようと思う。
テスト環境
tomcat 5.0.27
jvm 1.4.1_01
postgreSQL 7.3
<server.xml>の変更
-- 実際には、TOMCAT_HOME/conf/Catalina/localhost/foo.xml を変更
<Resource name="jdbc/postgres" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/testDB">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.postgresql.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:postgresql://127.0.0.1:5432/testDB</value>
</parameter>
<parameter>
<name>username</name>
<value>postgres</value>
</parameter>
<parameter>
<name>password</name>
<value>postgres</value>
</parameter>
</ResourceParams>
foo/<web.xml>の変更
<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/testDB </res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
eclipse 3.0.0 で tomcat プラグインから実行してみる。
動かず。
-- java.lang.NoClassDefFoundError: javax/sql/DataSource
よくみたら、起動VMが1.3.xになっていた。
1.4.xに変更して再起動。無事動く。
案外簡単に動いてしまった。
DBCPが使えるようなので、さらに以下を<server.xml>に追加
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
無事動く。
#同時接続テストをするコードを書いてみるか。
いい加減データソースを使ったものに変えようと思う。
テスト環境
tomcat 5.0.27
jvm 1.4.1_01
postgreSQL 7.3
<server.xml>の変更
-- 実際には、TOMCAT_HOME/conf/Catalina/localhost/foo.xml を変更
<Resource name="jdbc/postgres" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/testDB">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.postgresql.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:postgresql://127.0.0.1:5432/testDB</value>
</parameter>
<parameter>
<name>username</name>
<value>postgres</value>
</parameter>
<parameter>
<name>password</name>
<value>postgres</value>
</parameter>
</ResourceParams>
foo/<web.xml>の変更
<resource-ref>
<description>postgreSQL Datasource example</description>
<res-ref-name>jdbc/testDB </res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
eclipse 3.0.0 で tomcat プラグインから実行してみる。
動かず。
-- java.lang.NoClassDefFoundError: javax/sql/DataSource
よくみたら、起動VMが1.3.xになっていた。
1.4.xに変更して再起動。無事動く。
案外簡単に動いてしまった。
DBCPが使えるようなので、さらに以下を<server.xml>に追加
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
無事動く。
#同時接続テストをするコードを書いてみるか。