共分spring容器自带连接池、项目中创建连接池、服务器创建连接池三种 Po%+:0oX
x>u \
1、spring容器自带连接池 ^!={=No]
H%!ED1zpA
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> Px!M^
T!Pi
<property name="driverClassName"> D!K){E
<value>com.mysql.jdbc.Driver</value> h)W?8XdM
</property> Fp)+>oT
<property name="url"> [hLSK-K 9
<value>jdbc:mysql://127.0.0.1:3306/test</value> BCw5.@HK*
</property> x1gf o!BN
<property name="username"> -QUr|:SK:
<value>admin</value> ?r~|B/]
</property> duCso M/
<property name="password"> m+f?+c6
<value/> M![aty@
</property> (QO8_
</bean> X3z$f(lF%)
y>:-6)pv
2、项目中创建连接池(一般利用开源项目) _I("k:E7
52*9q!
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> EJd l%j
<property name="driverClassName"> 0Zt=1Tv
<value>com.mysql.jdbc.Driver</value> e|`QW|9 .
</property> &\3k(j
<property name="url"> x*8lz\w
<value>jdbc:mysql://127.0.0.1:3306/test</value> B74L/h
</property> C^}2::Qu
<property name="username"> To x{Sk3L
<value>admin</value> SJYy,F],V"
</property> QKj-"y[
<property name="password"> `zr%+
<value/> r%M.rYLG{
</property> So?ScX\lG
</bean> u7rA8u|TO
6ty>0
3、应用服务器创建数据源,项目中通过jndi访问,以tomcat为例 Jj<UtD+
QAp+LSm
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> ?s4-2g
<property name="jndiName"> 8"d0Su4r
<value>java:comp/env/jdbc/TestDB</value> C~16Jj:v
</property> =%p%+F@RlW
</bean> X[Lwx.Ly8
mN>7vJ
注意每种容器的jndi写法不同,所以java:comp/env/jdbc/TestDB为其全称,但在配置jndi时可能会是其中一部分,如tomcat配置jdbc/TestDB _\HMF
8\z5* IPGs
配置错误会报javax.naming.NameNotFoundException: Name jdbc is not bound in this Context异常