共分spring容器自带连接池、项目中创建连接池、服务器创建连接池三种 dz^b(q
'N^*,
1、spring容器自带连接池 7n?yf_je
Z- t&AH
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> XjdHH.) S
<property name="driverClassName"> {\vVzy,t7
<value>com.mysql.jdbc.Driver</value> :T|9;2
</property> V;W{pd-I
<property name="url"> %NfXe[T
<value>jdbc:mysql://127.0.0.1:3306/test</value> 3 yw$<lm
</property> +hKs
<property name="username"> `!spi=f
<value>admin</value> 'oK oF
</property> p/88mMr
<property name="password"> Dw.I<fns^B
<value/> 5F!Qn\{u{
</property> hs5>Gx
</bean> j0j!oj)7I
%%/8B
2、项目中创建连接池(一般利用开源项目) 1Q!kk5jE
BY&{fWUo
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> cly} [<w!
<property name="driverClassName"> MV??S{^4
<value>com.mysql.jdbc.Driver</value> ~o/k?l
</property> SQhVdYU1'
<property name="url"> b;{"@b,Y
<value>jdbc:mysql://127.0.0.1:3306/test</value> }#-@5["-X
</property> `N&*+!O%
<property name="username"> ^{{a
v?h
<value>admin</value> LR{bNV[i
</property> 0}"\3EdAbD
<property name="password"> E
.28G2&
<value/> 1C<d^D_!p
</property> V0rQtxE{F
</bean> @?3^Ks_
k s\q^ten
3、应用服务器创建数据源,项目中通过jndi访问,以tomcat为例 _5H~1G%q
(~%NRH<\
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 3tCTPZy
<property name="jndiName"> tjwnFqI
<value>java:comp/env/jdbc/TestDB</value> D(;+my2
</property> 6^t#sEff]
</bean> 6%h%h: e
Ov<c1y;f
注意每种容器的jndi写法不同,所以java:comp/env/jdbc/TestDB为其全称,但在配置jndi时可能会是其中一部分,如tomcat配置jdbc/TestDB 'l=>H#}<B
$8i`h}AM
配置错误会报javax.naming.NameNotFoundException: Name jdbc is not bound in this Context异常