共分spring容器自带连接池、项目中创建连接池、服务器创建连接池三种 $cyLI+uz|
&mCs%l
1、spring容器自带连接池 bBd *}"v^"
RJQ/y3
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> g8C+1G8
<property name="driverClassName"> 9c#L{in
<value>com.mysql.jdbc.Driver</value> D-;J;m
\
</property> AviT+^7E
<property name="url"> Kv(Y }
<value>jdbc:mysql://127.0.0.1:3306/test</value> 3xc:Y>
*`
</property> 0^-z?Kb<}
<property name="username"> mm3zQ!2j.
<value>admin</value> =9#i<te
</property> N;%j#(v
j
<property name="password"> O<gP)ZW~
<value/> FA5k45wL
</property> T9aTEsA[U
</bean> '&rw=.cU
"-G.V#zI
2、项目中创建连接池(一般利用开源项目) [RroHXdk+
h}Fu"zK
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> Yk(NZ3O
<property name="driverClassName"> z1z=P%WK
<value>com.mysql.jdbc.Driver</value> jJiCF,m
</property> g`y/_
<property name="url"> b#bO=T$e-
<value>jdbc:mysql://127.0.0.1:3306/test</value> 89 _&X[X
</property> #MmmwPB_
<property name="username"> J$o[$G_Z
<value>admin</value> JI28}Cxs0
</property> {'cs![U
<property name="password"> FZ;YvdX6
<value/> uOy\{5s8
</property> }s8*QfK>
</bean> g;|
n8]
N9~'P-V
3、应用服务器创建数据源,项目中通过jndi访问,以tomcat为例 {FrHm
D_L'x"
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> B'<O)"1w
<property name="jndiName"> c~Q`{2%+
<value>java:comp/env/jdbc/TestDB</value> #l8K8GLuf
</property> ;tZ}i4Ud
</bean> C={sE*&dYX
q{N lF$X
注意每种容器的jndi写法不同,所以java:comp/env/jdbc/TestDB为其全称,但在配置jndi时可能会是其中一部分,如tomcat配置jdbc/TestDB B{=,VwaP_
6'3Ey'drH
配置错误会报javax.naming.NameNotFoundException: Name jdbc is not bound in this Context异常