根据Spring论坛中的一位资深成员,Spring
DataSource不适用于生产用途:
以上答案只是解决方案的一部分。确实,您需要适当的事务代理,并且需要连接池。DriverManagerDataSource并非用于生产,它每次需要时都打开和关闭一个日期数据库连接。
相反,您可以将C3P0用作处理重新连接的DataSource,并且性能要好得多。这是Spring xml配置中潜在配置的快速示例:
<bean id="c3p0DataSource" destroy-method="close"> <property name="driverClass" value="com.mysql.jdbc.Driver" /> <property name="jdbcUrl" value="#{systemProperties.dbhost}" /> <property name="user" value="#{systemProperties.dbuser}" /> <property name="password" value="#{systemProperties.dbpass}" /> <property name="maxPoolSize" value="25" /> <property name="minPoolSize" value="10" /> <property name="maxStatements" value="100" /> <property name="testConnectionOnCheckout" value="true" /></bean><bean id="jdbcTemplate" > <constructor-arg ref="c3p0DataSource" /></bean>


