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

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

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

二: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. paramiko的使用

    import paramiko import sys user = "root" pwd = " # 上传文件 def sftp_upload_file(server_p ...

  2. Treasure Exploration POJ - 2594 【有向图路径可相交的最小路径覆盖】模板题

    Have you ever read any book about treasure exploration? Have you ever see any film about treasure ex ...

  3. 003_C/C++笔试题_分享大汇总

    (一)感谢:lhzstudio 01_C++经典面试题全集 50~100道 都附带有参考答案 02_C++开发工程师面试题库 100~150道 03_C++笔试题库之编程.问答题 150~200道 0 ...

  4. 005_linuxC++之_指针的引入

    (一)直接看代码 #include <iostream> using namespace std; int add(int a){ a = a + ; return a; } int ad ...

  5. MySQL 中Redo与Binlog顺序一致性问题

    首先,我们知道在MySQL中,二进制日志是server层的,主要用来做主从复制和即时点恢复时使用的.而事务日志(redo log)是InnoDB存储引擎层的,用来保证事务安全的.现在我们来讨论一下My ...

  6. 富文本编辑器从word粘贴公式

    很多时候我们用一些管理系统的时候,发布新闻.公告等文字类信息时,希望能很快的将word里面的内容直接粘贴到富文本编辑器里面,然后发布出来.减少排版复杂的工作量. 下面是借用百度doc 来快速实现这个w ...

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

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

  8. 2019.6.28 校内测试 T4 【音乐会】达拉崩吧·上

    考试的一道附加题~ 一看题目描述:把区间[l,r]里每个数异或上x,求区间[l,r]里所有数的异或和,这明显的要用数据结构或RMQ吧. 恩,所以正解就是线段树啦,至于树状数组行与否,不知道~ wate ...

  9. vmware 安装 VMwareTools

    mkdir /mnt/cdrom mount /dev/cdrom /mnt/cdrom cd /mnt/cdrom cp VMwareTools-x.x.x-yyyy.tar.gz ~/ cd ~ ...

  10. Process 'xx' Is Running

    最近在试着使用idea,工具快捷键和设置都不太熟,今天遇到进程占用问题,感觉有必要总结一下,避免下次遇到同样问题. 常用快捷键: ctrl+n 搜索 ctrl+Shift+n 全部搜索 Ctrl+Al ...