Tôi có ứng dụng web java sử dụng Spring, Hibernate, Tomcat7 & MySql. Tôi sử dụng Datasource cho các hoạt động cơ sở dữ liệu. Tôi không rõ lắm về vị trí tiêu chuẩn để tải các tệp jar (Tomcat-jdbc.jar
& Mysql-connector.jar
) từ đâu? Nó hoạt động nếu tôi giữ cả hai lọ trong số CATALINA_HOME/lib/
hoặc webapps/myApp/WEB-INF/lib
. Nhưng tôi được yêu cầu chỉ sử dụng Tomcat-jdbc từ CATALINA_HOME/lib/và mysql-connector.jar
từ /WEB-INF/lib/
, cung cấp một ngoại lệ ClassNotFound
cho Sql Driver
. Ai đó có thể cho tôi biết đó là vị trí phù hợp cho các lọ này không?Tệp JAR của trình điều khiển JDBC ở đâu sẽ nằm trên triển khai Tomcat với nguồn dữ liệu?
<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>
Bạn có trình điều khiển MySQL trên đường dẫn lớp của mình không? – NickJ
Có. /WEB-INF/lib/mysql-connector.jar – PeterGriffin
Cũng đọc [Apache Tomcat 6.0 Class Loader HOW-TO] (https://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html) –