共分spring容器自带连接池、项目中创建连接池、服务器创建连接池三种 ;s}3e#$L
B2(,~^39
1、spring容器自带连接池 b2s~%}T
s7"i.A
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> Z/7dg-$?'0
<property name="driverClassName"> ^j=bObaX
<value>com.mysql.jdbc.Driver</value> ${>DhfF
</property> Sr"/-
<property name="url"> B9^R8|V
<value>jdbc:mysql://127.0.0.1:3306/test</value> jA<T p}$!
</property> n_9x"m$
<property name="username"> F@EJtwLd5y
<value>admin</value> s!de2z
</property> 8lb-}=
<property name="password"> <xqba4O
<value/> I7zn>^0}
</property> JiA'BEJN
</bean> 3e
73l
uy9!qk
2、项目中创建连接池(一般利用开源项目) ]Uh1l.O
11{y}J
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> !^L-T?y.2
<property name="driverClassName"> 8&."uEOOU
<value>com.mysql.jdbc.Driver</value> +v-LL*fa
</property> M _ (2sq
<property name="url"> o%qkq K1
<value>jdbc:mysql://127.0.0.1:3306/test</value> F~R7~ZE
</property> 7kd|K
b(
<property name="username"> OD|1c6+X
<value>admin</value> V.2[ F|P;3
</property> CL1;Inzl
<property name="password"> Ag6uR(uI
<value/> uLK(F
B
</property> nh0&'hA
</bean> TY6
rwU
q% EC
3、应用服务器创建数据源,项目中通过jndi访问,以tomcat为例 K(OaW)j
Y 1y E
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> l#xw.2bo
<property name="jndiName"> ^Plc}W7h
<value>java:comp/env/jdbc/TestDB</value> m[rL\](-
</property> eEP(
).
</bean> P7r4ePtLk{
$
S~%Ks C
注意每种容器的jndi写法不同,所以java:comp/env/jdbc/TestDB为其全称,但在配置jndi时可能会是其中一部分,如tomcat配置jdbc/TestDB ET+'Pj3
iaRR5D-
配置错误会报javax.naming.NameNotFoundException: Name jdbc is not bound in this Context异常