一:什么是连接池?使用连接池的好处是什么?

  连接池就是一个存放数据库连接对象的容器。当系统初始化后,就会向数据库申请一些连接对象存放到容器里,用的时候直接从容器里取,用完后放回连接池。

  连接池可以提高数据库访问效率,也可以节约资源。

二: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的更多相关文章

  1. 黑马学习连接池 druid JdbcTemplate c3p0 池技术

    package cn.itcast.jdbctemplate; import org.junit.Test; import org.springframework.jdbc.core.BeanProp ...

  2. JdbcTemplae使用入门&&Spring三种连接池配置&&Spring配置文件引用外部properties文件

    JdbcTemplate的使用 Spring为了各种支持的持久化技术,都提供了简单操作的模版和回调. JdbcTemplate 简化 JDBC 操作HibernateTemplate 简化 Hiber ...

  3. (七)Spring 配置 c3p0 连接池

    目录 在 Spring 核心配置文件中配置 c3p0 连接池 配置 JdbcTemplate 对象 在 service 层注入 userDao 在 UserDao 里面注入 JdbcTemplate ...

  4. Java框架spring 学习笔记(十六):c3p0连接池的配置以及dao使用jdbcTemplate

    连接池可以大大提高数据库的性能和连接速度,将那些已连接的数据库连接存放在一个连接池里,以后别人要连接数据库的时候,将不会重新建立数据库连接,直接从连接池中取出可用的连接,用户使用完毕后,会释放连接重新 ...

  5. Spring_day03--Spring配置c3p0连接池和dao使用jdbcTemplate

    Spring配置c3p0连接池和dao使用jdbcTemplate 1 spring配置c3p0连接池 第一步 导入jar包 第二步 创建spring配置文件,配置连接池 原始方式 (1)把代码在配置 ...

  6. spring配置连接池和dao使用jdbcTemplate

    1 spring配置c3p0连接池 第一步 导入jar包 第二步 创建spring配置文件,配置连接池 (1)把代码中的实现在配置文件中实现 2 dao使用jdbcTemplate (1) 创建ser ...

  7. Spring中c3p0连接池的配置 及JdbcTemplate的使用 通过XML配置文件注入各种需要对象的操作 来完成数据库添加Add()方法

    通过配置文件XML方法的配置 可以使用非常简练的Service类 UserService类代码如下: package com.swift; public class UserService { pri ...

  8. Java中JDBC连接池&JDBCTemplate

    数据库连接池 概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归 ...

  9. JavaWeb——JDBC连接池&JDBCTemplate

    今日内容 1. 数据库连接池 2. Spring JDBC : JDBC Template 数据库连接池 1. 概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容 ...

随机推荐

  1. [2019HDU多校第一场][HDU 6580][C. Milk]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6580 题目大意:\(n\times m\)大小的方格上有\(k\)瓶水,喝完每瓶水都需要一定的时间.初 ...

  2. xunit输出

    //输出,只能注入 public class MyUnitTest { private IServiceCollection service; private readonly ITestOutput ...

  3. QPS 和 TPS

  4. CAZAC序列

    定义: CAZAC(Const Amplitude Zero Auto-Corelation),即为恒包络零自相关序列. 性质: 1,恒包络特性:任意长度的CAZAC序列幅值恒定. 2,理想的周期自相 ...

  5. junit3和junit4的使用区别如下

    junit3和junit4的使用区别如下1.在JUnit3中需要继承TestCase类,但在JUnit4中已经不需要继承TestCase2.在JUnit3中需要覆盖TestCase中的setUp和te ...

  6. 设计模式--UML类图简介

    UML:Unified Modelling Language是一种统一建模语言(英语:Unified Modeling Language,缩写 UML)是非专利的第三代建模和规约语言. “+”表示pu ...

  7. Linux之文件通信

    /* * 后执行,尝试读取另外一个进程写入文件的内容 */ #include <stdio.h> #include <unistd.h> #include <stdlib ...

  8. HDOJ->考新郎(sdut1021)

    考新郎 Problem Description 在一场盛大的集体婚礼中,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的: 首先,给每 ...

  9. vue后台_实战篇

    一.一些常用组件效果的实现 1)面包屑导航 主要是使用$route.mathed:一个数组,包含当前路由的所有嵌套路径片段的路由记录 .路由记录就是 routes 配置数组中的对象副本 (还有在 ch ...

  10. DML:增、删、改表中数据

    1. 添加数据 (1) 常规添加 INSERT INTO 表名(列名,列名,列名) VALUES(值,值,值); (2) 简化添加 INSERT INTO 表名 VALUES(值,值,值); 规则: ...