Spring下如何配置不依赖于tomcat容器,由项目自身管理的数据库连接池

如题



我希望是我自身开发的项目来管理连接池。



我现在的做法是在Spring的applicationContext.xml下配置连接池



    <bean id="entityManagerFactory" <br="">        class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">

        <property name="dataSource" ref="dataSource">

        <property name="jpaVendorAdapter">

            <bean <br="">                class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">

                <property name="database" value="MYSQL">

                <property name="showSql" value="true">

            </bean>

        </property>

    </bean>




<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">

<property name="driverClassName" value="com.mysql.jdbc.Driver">

<property name="url" value="jdbc:mysql://localhost:3306/quickstart">

<property name="username" value="root">

<property name="password" value="mysql">




<property name="maxActive" value="20">




<property name="maxIdle" value="10">




<property name="maxWait" value="1000">




<property name="defaultAutoCommit" value="false">




<property name="removeAbandoned" value="true">




<property name="removeAbandonedTimeout" value="60">

<property name="logAbandoned" value="true">

</bean>




但是这样我必须将DBCP和MYSQL的包放到tomcat\common\lib目录下,连接池要tomcat管理,我希望让我的项目自身去管理连接池,而不需要tomcat去管理
问题补充:
回rain2005:如果我不将DBCP,MYSQL的包放到tomcat\common\lib下的话,启动tomcat时提示里面一些类找不到,尽管我项目里已经导入了这几个包
问题补充:
我已经找到问题所在了,我用的是maven管理我的项目,虽然项目里已经导入这几个包了,但maven没有找到这几个jar,谢谢你

2个回答

不会把,你可以把DBCP和MYSQL的jar包放在WEB-INF/lib下也是一样的啊,[b]你这里的连接池不需要tomcat管理[/b],只有使用JNDI获取数据库连接才需要容器管理。

到底是什么类找不到呢?一定要放到WEB-INF/lib目录下面

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问