У меня есть веб-приложение Java, использующее Spring, Hibernate, Tomcat7 & MySql. Я использую Datasource для операций с базой данных. Я не очень понимаю, что такое стандартное местоположение для загрузки файлов jar (Tomcat-jdbc.jar
& Mysql-connector.jar
) от? Он работает, если я держу BOTH банки в CATALINA_HOME/lib/
или webapps/myApp/WEB-INF/lib
. Но мне сказали использовать только Tomcat-jdbc из CATALINA_HOME/lib/и mysql-connector.jar
от /WEB-INF/lib/
, что дает ClassNotFound
Исключение для Sql Driver
. Может ли кто-нибудь сообщить мне, что является правильным местом для этих банок?Где должны храниться JAR-файлы JDBC-драйвера в развертывании Tomcat с источником данных?
<bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource"
destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="${db.url}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.password}" />
<property name="initialSize" value="${db.initialSize}" />
<property name="minIdle" value="${db.minIdle}" />
<property name="maxActive" value="${db.maxActive}" />
<property name="maxIdle" value="${db.maxIdle}" />
<property name="testWhileIdle" value="${db.testWhileIdle}" />
<property name="minEvictableIdleTimeMillis" value="${db.minEvictableIdleTimeMillis}" />
<property name="timeBetweenEvictionRunsMillis" value="${db.timeBetweenEvictionRunsMillis}" />
<property name="validationQuery" value="${db.validationQuery}" />
</bean>
У вас есть драйвер MySQL на пути к классу? – NickJ
Да. /WEB-INF/lib/mysql-connector.jar – PeterGriffin
Также читайте [Apache Tomcat 6.0 Class Loader HOW-TO] (https://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html) –