连接池和JDBCTemplate
一:什么是连接池?使用连接池的好处是什么?
连接池就是一个存放数据库连接对象的容器。当系统初始化后,就会向数据库申请一些连接对象存放到容器里,用的时候直接从容器里取,用完后放回连接池。
连接池可以提高数据库访问效率,也可以节约资源。
二:java中提供了一个接口叫DataSource,他提供了连接池规范。开发者一般使用第三方的类库实现这个接口。C3P0 和 Druid(由阿里巴巴提供);
三:C3P0的具体使用:
1. 导入jar包 c3p0-0.9.5.2.jar 和 mchange-commons-java-0.2.12.jar
注意:不要了数据库驱动jar包
2. 定义配置文件
名称:c3p0.properties or c3p0-config.xml
路径:直接将配置放到src目录下即可
3:DataSource dataSource = new ComboPooledDataSource(); //创建连接池
Connection conn = dataSource.getConnection(); //创建连接对象
四:Druid的使用:
1:导入druid所需的包和数据库驱动包
2:定义配置文件,放在src目录下
Properties pro = new Properties(); //创建配置文件对象
InputStream is = Demo03.class.getClassLoader().getResourceAsStream("druid.properties"); //读到定义的配置文件
pro.load(is); //将配置文件加载到配置文件对象中
DataSource ds = DruidDataSourceFactory.createDataSource(pro); //获取连接池‘
Connection conn = ds.getConnection(); //获取连接对象
五:JDBCTemplate :JDBCTemplate是以Spring在JDBCAPI上定义的抽象层建立的JDBC存取框架,有了它可以更方便的操作数据库,增删查改操作更方便。
1:创建JDBCTemplate:
JDBCTemplate jdbc = new JDBCTemplate(DataSource data) //传入一个连接池对象
2:常用方法:所有方法都传入查询字符串
(1):uddate() 执行增删改操作
(2):queryForMap() 查询单条数据使用,返回map集合。
(3):queryForList() 查询多条数据使用,返回 List<Map<String,Object>>
(4):query() 查询单条数据,将数据封装成自定义对象
(5):queryForObject() 查询多条数据,将数据封装成自定义对象
(6):execute() 可以执行任何语句,一般用于执行DDL语句
连接池和JDBCTemplate的更多相关文章
- 黑马学习连接池 druid JdbcTemplate c3p0 池技术
package cn.itcast.jdbctemplate; import org.junit.Test; import org.springframework.jdbc.core.BeanProp ...
- JdbcTemplae使用入门&&Spring三种连接池配置&&Spring配置文件引用外部properties文件
JdbcTemplate的使用 Spring为了各种支持的持久化技术,都提供了简单操作的模版和回调. JdbcTemplate 简化 JDBC 操作HibernateTemplate 简化 Hiber ...
- (七)Spring 配置 c3p0 连接池
目录 在 Spring 核心配置文件中配置 c3p0 连接池 配置 JdbcTemplate 对象 在 service 层注入 userDao 在 UserDao 里面注入 JdbcTemplate ...
- Java框架spring 学习笔记(十六):c3p0连接池的配置以及dao使用jdbcTemplate
连接池可以大大提高数据库的性能和连接速度,将那些已连接的数据库连接存放在一个连接池里,以后别人要连接数据库的时候,将不会重新建立数据库连接,直接从连接池中取出可用的连接,用户使用完毕后,会释放连接重新 ...
- Spring_day03--Spring配置c3p0连接池和dao使用jdbcTemplate
Spring配置c3p0连接池和dao使用jdbcTemplate 1 spring配置c3p0连接池 第一步 导入jar包 第二步 创建spring配置文件,配置连接池 原始方式 (1)把代码在配置 ...
- spring配置连接池和dao使用jdbcTemplate
1 spring配置c3p0连接池 第一步 导入jar包 第二步 创建spring配置文件,配置连接池 (1)把代码中的实现在配置文件中实现 2 dao使用jdbcTemplate (1) 创建ser ...
- Spring中c3p0连接池的配置 及JdbcTemplate的使用 通过XML配置文件注入各种需要对象的操作 来完成数据库添加Add()方法
通过配置文件XML方法的配置 可以使用非常简练的Service类 UserService类代码如下: package com.swift; public class UserService { pri ...
- Java中JDBC连接池&JDBCTemplate
数据库连接池 概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归 ...
- JavaWeb——JDBC连接池&JDBCTemplate
今日内容 1. 数据库连接池 2. Spring JDBC : JDBC Template 数据库连接池 1. 概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容 ...
随机推荐
- [2019HDU多校第一场][HDU 6580][C. Milk]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6580 题目大意:\(n\times m\)大小的方格上有\(k\)瓶水,喝完每瓶水都需要一定的时间.初 ...
- xunit输出
//输出,只能注入 public class MyUnitTest { private IServiceCollection service; private readonly ITestOutput ...
- QPS 和 TPS
- CAZAC序列
定义: CAZAC(Const Amplitude Zero Auto-Corelation),即为恒包络零自相关序列. 性质: 1,恒包络特性:任意长度的CAZAC序列幅值恒定. 2,理想的周期自相 ...
- junit3和junit4的使用区别如下
junit3和junit4的使用区别如下1.在JUnit3中需要继承TestCase类,但在JUnit4中已经不需要继承TestCase2.在JUnit3中需要覆盖TestCase中的setUp和te ...
- 设计模式--UML类图简介
UML:Unified Modelling Language是一种统一建模语言(英语:Unified Modeling Language,缩写 UML)是非专利的第三代建模和规约语言. “+”表示pu ...
- Linux之文件通信
/* * 后执行,尝试读取另外一个进程写入文件的内容 */ #include <stdio.h> #include <unistd.h> #include <stdlib ...
- HDOJ->考新郎(sdut1021)
考新郎 Problem Description 在一场盛大的集体婚礼中,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的: 首先,给每 ...
- vue后台_实战篇
一.一些常用组件效果的实现 1)面包屑导航 主要是使用$route.mathed:一个数组,包含当前路由的所有嵌套路径片段的路由记录 .路由记录就是 routes 配置数组中的对象副本 (还有在 ch ...
- DML:增、删、改表中数据
1. 添加数据 (1) 常规添加 INSERT INTO 表名(列名,列名,列名) VALUES(值,值,值); (2) 简化添加 INSERT INTO 表名 VALUES(值,值,值); 规则: ...