Как получить доступ к драйверу JDBC, который настроен как ресурс JNDI, из Spring? - PullRequest
2 голосов
/ 12 февраля 2012

Мое приложение основано на шаблоне Spring MVC.

Я настроил DataSource со следующим тегом в моем context.xml:

<Resource name="jdbc/registrator" auth="Container" type="javax.sql.DataSource"
           maxActive="100" maxIdle="30" maxWait="10000"
           username="javauser" password="javauser" driverClassName="org.gjt.mm.mysql.Driver"
           url="jdbc:mysql://localhost:3306/registrator"/>

Правильно ли я думаю, что так и будетзаставить Tomcat создать серверный экземпляр org.gjt.mm.mysql.Driver bean-компонента и сделать его доступным под именем "jdbc / registrator"?

Должен ли я также описать этот ресурс в web.xml, как указано здесь http://tomcat.apache.org/tomcat-7.0-doc/jndi-resources-howto.html#JDBC_Data_Sources? Возможно, это не требуется, если я использую Spring Framework?

Как получить доступ к этому bean-компоненту из конфигурации контекста Spring?

1 Ответ

3 голосов
/ 12 февраля 2012

Используйте для этого пространство имен jee (см. C.2.3 Схема jee ):

<jee:jndi-lookup id="dataSource" jndi-name="jdbc/registrator"/>

Это определяет бин с именем dataSource, представляющий ваш источник данных Tomcat.

Не нужно ничего добавлять к web.xml.

...