4

当我收到错误消息时,我应该在哪里指示类依赖关系:

  • 找不到类“com.mchange.v2.c3p0.ComboPooledDataSource”
  • 找不到类“org.springframework.jdbc.datasource.DataSourceTransactionManager”

jdbc-context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">

    <context:property-placeholder location="/WEB-INF/spring.properties" />

    <tx:annotation-driven transaction-manager="transactionManager" />

    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
        destroy-method="close"
        p:driverClass="${jdbc.driverClassName}"
        p:jdbcUrl="${jdbc.url}"
        p:user="${jdbc.username}"
        p:password="${jdbc.password}"
        p:acquireIncrement="5"
        p:idleConnectionTestPeriod="60"
        p:maxPoolSize="100"
        p:maxStatements="50"
        p:minPoolSize="10" />

    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource" />
</beans>
4

2 回答 2

3

首先,我建议使用相同版本的命名空间。在您的情况下,请使用 2.5 或 3.0。甚至是当前版本 但不要在同一个项目中使用不同的版本。

关于你的第一个问题:

找不到类“com.mchange.v2.c3p0.ComboPooledDataSource”

你是否包含在你的类路径'c3p0-0.9.1.2.jar'中?

在第二种情况下,您应该根据您决定使用的 Spring 版本将“spring-jdbc-xxjar”包含到类路径中。

于 2013-02-14T12:55:32.550 回答
1
Class 'com.mchange.v2.c3p0.ComboPooledDataSource' not found

我通过将文件复制到由谷歌搜索创建的c3p0-0.9.1.2.jar文件来解决此错误WEB-INF/lib folder.c3p0-0.9.1.2.jar

于 2018-12-27T06:21:51.573 回答