1, Spring指定 datasource
DataSource接口,在javax.sql包,里边有一个getConnection()方法。提供了标准化的取得连接的方式。只要实现了这个接口。Sun这个土鳖定的。
a) 参考文档,找dbcp.BasicDataSource (dbcp:database connection pool数据库连接池)
i. c3p0
ii. dbcp
iii. proxool
b) 在DAO或者Service中注入dataSource
c) 在Spring中可以使用PropertyPlaceHolderConfigure来读取properties文件的内容
在beans.xml配置里写:
<!-- DataSource去哪里读取连接池配置 --> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <!-- 在src根目录下建jdbc.properties配置文件 --> <value>classpath:jdbc.properties</value> </property> </bean>
DataSource:注意这里使用dbcp,使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar
<!-- dbcp連接池 ,根据上边的配置去配置文件去读取配置--> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${jdbc.driverClassName}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> <property name="initialSize" value="5"/> <property name="maxActive" value="20"/> </bean>
在src根目录建jdbc.properties配置,名称和DataSource里要一致:
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/spring
jdbc.username=root
jdbc.password=root
将DataSource数据源注入到DAO:
<bean id="userDAO" class="com.oracle.dao.impl.UserDAOImpl"> <property name="dataSource" ref="dataSource"></property> </bean>
dbcp连接池配置:
<!-- 连接池启动时的初始值 --> (
以下内容摘在springside): |