Spring 2 JDBC数据源配置

4

我目前正在查看一个使用Spring和Spring JDBC的应用程序。

http://static.springsource.org/spring/docs/2.0.x/reference/jdbc.html

我在文档中找不到如何配置设置,例如设置池大小、重新连接、借用测试。

我有遗漏吗?我是Spring的新手。是这个基本的JDBC选项不允许我执行所描述的操作还是我需要像c3po库这样的东西?

1个回答

6

这些属性不是Spring的一部分,而是底层DataSource实现。首先,您需要包含一些数据库池库,例如

<dependency>
    <groupId>commons-dbcp</groupId>
    <artifactId>commons-dbcp</artifactId>
    <version>1.4</version>
</dependency>

一旦您添加了这个库,您就可以配置提供的DataSource实现:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="username" value="user" />
    <property name="password" value="pwd" />
    <property name="url" value="some:url" />
    <property name="driverClassName" value="some.class.Driver" />
    <property name="initialSize" value="5" />
    <property name="maxActive" value="10" />
    <property name="testOnBorrow" value="true" />
    <property name="validationQuery" value="SELECT 1" />
</bean>

你还可以选择不同的DataSource实现,例如。最后,你可以获取在应用程序服务器中配置的DataSource,例如使用。Spring JDBC支持使用任何提供的DataSource实现。此外,Spring还提供了一些非常简单的DriverManagerDataSource,用于测试。

谢谢,我还可以问一下,如果没有使用DBCP / C3PO,这是否意味着Spring JDBC会退回到默认设置,而我们并不知道这些设置是什么? - OCB
@ChinBoon:不,你必须提供实现DataSource接口的bean,Spring 不会使用任何默认/备用数据源。它很可能启动失败。 - Tomasz Nurkiewicz
谢谢,还有一个问题,如果连接(和池)由WebLogic管理,该怎么办? - OCB
@ChinBoon:那么WebLogic允许您通过[tag:jndi](或者可能使用一些专有API)查找此连接池(DataSource)吗? - Tomasz Nurkiewicz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接