コンテキストファイルを下記のように
<Resource name="jdbc/mysql" auth="Container"
type="javax.sql.DataSource" maxActive="10"
maxIdle="5" maxWait="-1" initialSize="5"
validationQuery="SELECT 1" testOnBorrow="true"
testWhileIdle="true" username="hoge"
password="hoge" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/dbname?characterEncoding=utf8"/>
<Resource name="jdbc/mysqlXXX" auth="Container"
type="javax.sql.DataSource" maxActive="10"
maxIdle="5" maxWait="-1" initialSize="5"
validationQuery="SELECT 1" testOnBorrow="true"
testWhileIdle="true" username="fuga"
password="fuga" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/dbname2?characterEncoding=utf8"/>
applicationContext.xmlを以下のように記載
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:/comp/env/jdbc/mysql</value>
</property>
</bean>
<bean id="dataSourceLogin" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:/comp/env/jdbc/mysqlXXX</value>
</property>
</bean>
今回利用したパタンは
mysql ORマッパーを使用
mysqlXXX ORマッパーを未使用
mysqlXXXを使用したい場合、下記でDIできる。
import javax.sql.DataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
@Qualifier("dataSourceXXX")
@Autowired DataSource dataSourceXXX;