共分spring容器自带连接池、项目中创建连接池、服务器创建连接池三种 $1H?k
po*s
1、spring容器自带连接池 (6u<w#u
^c< <I-o|
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> }E]`ly<Z
<property name="driverClassName"> *0 i
<value>com.mysql.jdbc.Driver</value> *u>2" !+Ob
</property> KZ ?<&x
<property name="url"> d`StBXG!
<value>jdbc:mysql://127.0.0.1:3306/test</value> P0RMdf
</property> 2c5>0f
<property name="username"> ll1?I8}5|
<value>admin</value> &w2.b:HF
</property> ]j*o&6cQf
<property name="password"> jt"p Js'
<value/> qw%4j9}
</property> 20^F -,z
</bean> `C=!8q
mb0${n~fz
2、项目中创建连接池(一般利用开源项目) cIl^5eE^Pq
&BG^:4b
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> |1g2\5Re
<property name="driverClassName"> @WhcY*R2
<value>com.mysql.jdbc.Driver</value> XS9k&~)*
</property> m f4@g05
<property name="url">
TnM}|~V
<value>jdbc:mysql://127.0.0.1:3306/test</value> hx)Ed
</property> YH':cze
<property name="username"> ~rpYZLH/:0
<value>admin</value> 6 Y&OG>_\
</property> T]Tz<w W(
<property name="password"> Fj 1/B0acS
<value/>
*}ay
</property> y>~=o9J_u
</bean> xd(AUl4qY
"~]9}KM}3W
3、应用服务器创建数据源,项目中通过jndi访问,以tomcat为例 +R2
)KXLL;]
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> >GT0x
<property name="jndiName"> )/
s9ty
<value>java:comp/env/jdbc/TestDB</value> %=#&\ldPS
</property> S_?}H
</bean> qf)]!wU9
eDaVoc3
注意每种容器的jndi写法不同,所以java:comp/env/jdbc/TestDB为其全称,但在配置jndi时可能会是其中一部分,如tomcat配置jdbc/TestDB 'QCvN b6
@|-ydm0
配置错误会报javax.naming.NameNotFoundException: Name jdbc is not bound in this Context异常