Bahar sınıfınızda, aşağıdaki gibi açıklamalı bir fasulye enjekte edebilirsiniz.
@Autowired
@Qualifier("dbDataSource")
private DataSource dataSource;
ve bunu context.xml dosyasına eklersiniz
<beans:bean id="dbDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<beans:property name="jndiName" value="java:comp/env/jdbc/MyLocalDB"/>
</beans:bean>
Kullanarak tomcat's server.xml dosyasında JNDI kaynağını bildirebilirsiniz.
<Resource name="jdbc/TestDB"
global="jdbc/TestDB"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/TestDB"
username="pankaj"
password="pankaj123"
maxActive="100"
maxIdle="20"
minIdle="5"
maxWait="10000"/>
back to context.xml de spring bunu ekle
<ResourceLink name="jdbc/MyLocalDB"
global="jdbc/TestDB"
auth="Container"
type="javax.sql.DataSource" />
Bu örnek gibi, veritabanına bağlantı enjekte ediyorsanız, tomcat lib dizininde MySQL kavanozunun bulunduğundan emin olun, aksi takdirde tomcat MySQL veritabanı bağlantı havuzunu oluşturamaz.