共分spring容器自带连接池、项目中创建连接池、服务器创建连接池三种 = R n
qgs:9V
xF
1、spring容器自带连接池 $azK M,<q
_1jbNQa
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> \'r;1W
<property name="driverClassName"> %+((F+[
<value>com.mysql.jdbc.Driver</value> 2K^xN]]rG
</property> B qo#cnlG
<property name="url"> +y_V$q$G
<value>jdbc:mysql://127.0.0.1:3306/test</value> usNq]
</property> D;h JK-Y
<property name="username"> 6>3zD)tG
<value>admin</value> e#vGrLs.
</property> }Ui)xi:8
<property name="password"> \maj5VlJ
<value/> {`Z=LLL
</property> HqI[]T@
</bean> Y=i_2R2e2
S\ K[l/
2、项目中创建连接池(一般利用开源项目) z%]3`_I
M96Nt&P`
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> qYPgn_
<property name="driverClassName"> L'$({
<value>com.mysql.jdbc.Driver</value> Zbr1e5?
</property> = Qn8Y`U
<property name="url"> j*FpQiBoT
<value>jdbc:mysql://127.0.0.1:3306/test</value> i!G<sfL
</property> hXD`OlX
<property name="username"> xouBBb=
<value>admin</value> Ld'3uM/
</property> t R.>d
<property name="password"> "u'dd3!
<value/> L*P*^I^1
</property> )+"(7U<
</bean> 1]W8A.ZS
f7a"}.D$
3、应用服务器创建数据源,项目中通过jndi访问,以tomcat为例
]D^zTl3=q
^U^K\rq 1u
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 3*F|`js"
<property name="jndiName"> Q>xp 90&.n
<value>java:comp/env/jdbc/TestDB</value> f*EDSJu\
</property> 9%dO"t$-q
</bean> {qm5H7sL
-%Jm-^F I
注意每种容器的jndi写法不同,所以java:comp/env/jdbc/TestDB为其全称,但在配置jndi时可能会是其中一部分,如tomcat配置jdbc/TestDB 5! ]T%.rM
P
V9q=
配置错误会报javax.naming.NameNotFoundException: Name jdbc is not bound in this Context异常