共分spring容器自带连接池、项目中创建连接池、服务器创建连接池三种
. q, V# u* Q0 o% Z; k) u
& W0 C4 q5 j9 W; |# J& I1、spring容器自带连接池
复制内容到剪贴板
代码:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://127.0.0.1:3306/test</value>
</property>
<property name="username">
<value>admin</value>
</property>
<property name="password">
<value/>
</property>
</bean>2、项目中创建连接池(一般利用开源项目)
复制内容到剪贴板
代码:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://127.0.0.1:3306/test</value>
</property>
<property name="username">
<value>admin</value>
</property>
<property name="password">
<value/>
</property>
</bean>3、应用服务器创建数据源,项目中通过jndi访问,以tomcat为例
复制内容到剪贴板
代码:
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/TestDB</value>
</property>
</bean>注意每种容器的jndi写法不同,所以java:comp/env/jdbc/TestDB为其全称,但在配置jndi时可能会是其中一部分,如tomcat配置jdbc/TestDB+ A* U9 L) L% {! Q+ n
配置错误会报javax.naming.NameNotFoundException: Name jdbc is not bound in this Context异常