2

我正在开发一个 Spring MVC 应用程序,最近我被说服要修改我的数据库代码。在我使用非常传统的 JDBC 代码之前,我被告知由于样板代码而非常“老派”。我一直在过渡到将JdbcTemplate与 Spring 一起使用。

我在applicationContext.xml文件中配置了如下所示的 bean。

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
    <property name="url" value="jdbc:ip-address:port/dbName"/>
    <property name="username" value="myUsername"/>
    <property name="password" value="mypassword"/>
</bean>

我已经运行测试只是为了确保一切正常。

我的问题是,我知道我正在使用Commons DBCP包,它使用以下包

 commons-dbcp package
 commons-pool package

同样,我对此非常缺乏经验,因此如果我引用错误或解释不正确,我深表歉意。

我已经按照大多数教程所说的去做,并指定了一个 jdbcTemplate 并将 dataSource bean 注入其中,但这并不真正涉及我的问题。

我真正想知道的是,我是否在此配置中使用 ConnectionPooling?

如果是这样,它是在幕后完成的,还是我需要指定在某处进行?

我查看了Here的文档,其中提供了以下内容,但我不确定如何解释它。

“这里有几个已经可用的数据库连接池,无论是在 Apache 产品中还是在其他地方。这个 Commons 包提供了一个机会来协调在 ASF 许可下创建和维护一个高效、功能丰富的包所需的工作。commons-dbcp 包依赖于在 commons-pool 包中的代码上提供它使用的底层对象池机制。”

我还查看了配置页面

并且基于此页面,我认为我能够执行 ConnectionPooling,但可能需要在我的dataSource bean 中指定其他参数。

有人可以回答我的问题或指出我正确的方向吗?

4

1 回答 1

2

是的,您正在使用连接池。

这是另一个你可能会觉得有趣的话题

http://forum.springsource.org/showthread.php?t=40598

此外,您在上面指定的大多数链接都将提供有关可以设置的参数的附加信息。

于 2010-10-20T18:42:27.913 回答