[转]spring入门(六)【springMVC中各数据源配置】
在使用spring进行javaWeb开发的过程中,需要和数据库进行数据交换,为此要经常获取数据库连接,使用JDBC的方式获取数据库连接,使用完毕之后再释放连接,这种过程对系统资源的消耗无疑是很大的,这里简单描述三种数据库连接池的配置,使用这些连接池可以获得一个数据源。1、spring自带的JDBC连接池;2、c3p0;3、dbcp;
一、spring自带的JDBC方式
spring提供了对JDBC的支持,且提供了基于JDBC的数据源的配置,如下配置文件
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/test"></property>
<property name="username" value="root"></property>
<property name="password" value="123456"></property>
</bean>
在spring的配置文件,配置上面的bean,便得到一个JDBC的数据源。
二、c3p0
c3p0是一个开源的数据库连接池,可以很好的管理数据连接,如下配置
<bean id="dataSourceC3p0" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="com.mysql.jdbc.Driver"></property>
<property name="jdbcUrl" value="jdbc:mysql://127.0.0.1:3306/test"></property>
<property name="user" value="root"></property>
<property name="password" value="123456"></property>
</bean>
在spring的配置文件中,配置上面的bean,便得到一个c3p0的数据源;
注:要使用c3p0连接池,必须导入c3p0的jar包,在0.9.1版本之前,c3p0只有一二jar包:c3p0-0.9.1.jar,从0.9.2之后又分离出另外一个包:mchange-commons-java-0.2.11.jar,我这里使用的0.9.5.2的版本,所以我导入了两个jar包:c3p0-0.9.5.2.jar、mchange-commons-java-0.2.11.jar。具体的下载地址可以网上查询。
三、dbcp
dbcp同样是一个开源的数据连接池,如下配置,
<bean id="dataSourceDbcp" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/test"></property>
<property name="username" value="root"></property>
<property name="password" value="123456"></property>
</bean>
在spring的配置文件中,配置上面的bean,便得到一个dbcp的数据源;
注:要使用dbcp连接池需要导入相应的jar包,这里导入的是两个jar包:commons-dbcp-1.4.jar、commons-pool-1.5.6.jar
上面的三种数据源的配置都是最基础的配置,如果需要得到性能高的数据源源,还需要其他的配置项,可以执行研究。
有不正之处欢迎指出,谢谢!
转载链接:https://www.cnblogs.com/teach/archive/2016/09/14/5870767.html
最新文章
- asp.net js 倒计时总秒数量 和 排序
- 在mac中自动保存git用户名与密码如此简单
- jedis操作redis全指南
- cometd的服务器配置
- STM32F0xx_GPIO配置详细过程
- ubuntu挂载磁盘
- 重构12-Break Dependencies(打破依赖)
- 常用的MAVEN公共私服
- Api项目压力测试知识荟萃
- 【Apache Kafka】安装指南
- SCVMM更换数据库,如何搞?
- iOS9中通过UIStackView实现类似大众点评中的效果图
- 各种Adapter的用法
- 怎样在android实现uc和墨迹天气那样的左右拖动效果
- “jquery于each方法和选择”学习笔记
- 我自己总结的C#开发命名规范整理了一份
- Linux下的tar压缩解压缩命令详解(转)
- {";error";:";Content-Type header [application/x-www-form-urlencoded] is not supported";,";status";:406}
- python:OS模块
- 内幕:XX二手车直卖网,狗屁直卖网,我来揭开他们套路!
热门文章
- 调用phone库,查询手机号码归属地(4)
- 关于虚拟机中linux系统时间的问题
- 网址URL知识
- mui框架页面每次加载操作
- detours3.0文档翻译
- 6 Accessing and Managing Symbols with armlink
- Day 9 :初识函数
- 从数组中任意取出2个数,判断他们的和是否为输入的数字sum,时间复杂度为0(n^2),空间复杂度0(1)
- USACO 2003 Fall Orange Popular Cows /// tarjan缩点 oj22833
- 【POJ】2236 Wireless Network