连接池单例模式

1.私有化ComboPooledDataSource将其作为属性,使其实现单例
2.DataSourceFactory实现懒汉模式,这样作为属性的连接池cpds也就变为了单例
3.从连接池中获取连接Connection

代码如下:

package com.tcb.dao.uitls;import java.sql.Connection;import com.mchange.v2.c3p0.ComboPooledDataSource;/** 连接池单例模式* * 1.私有化ComboPooledDataSource将其作为属性,使其实现单例* 2.DataSourceFactory实现懒汉模式,这样作为属性的连接池cpds也就变为了单例* 3.从连接池中获取连接Connection*/
public class DataSourceFactory {//1.私有化ComboPooledDataSource将其作为属性,使其实现单例private ComboPooledDataSource cpds;//2.DataSourceFactory实现懒汉模式//2.1私有化构造方法--并初始化cpdsprivate DataSourceFactory() {cpds = new ComboPooledDataSource("c3p0-config");}//2.2 私有化属性private static DataSourceFactory sFactory = null;//2.3 返回SessionFactory单例public static DataSourceFactory getSessionFactoryInstance() {if (sFactory == null) {sFactory = new DataSourceFactory();}return sFactory;}//3.从连接池中获取连接Connectionpublic Connection getSession() throws Exception {System.out.println("cpsd========="+cpds);Connection connection = cpds.getConnection();System.out.println("connection========="+connection);return connection;}public static void main(String[] args) {//测试DataSourceFactory dataSourceFactory=DataSourceFactory.getSessionFactoryInstance();DataSourceFactory dataSourceFactory2=DataSourceFactory.getSessionFactoryInstance();try {dataSourceFactory.getSession();dataSourceFactory.getSession();dataSourceFactory.getSession();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}
}

测试结果:

连接池Connection Pool 单例设计相关推荐

  1. 《ADO.NET 2.0高级程序设计》读书随笔(1)使用连接池connection pool

    转载于:https://www.cnblogs.com/xuxiaoguang/archive/2007/12/18/1004591.html

  2. jsp oracle连接池,利用Oracle自带的连接池类的一例

    利用Oracle自带的连接池类的一例 作者:未知    文章来源:www.jspcn.net 发布日期:2005年01月19日 /** 封装了对数据库的连接,用于处理SQL语句. @author:ya ...

  3. 直播平台开发,直播各个分类单例设计展示

    直播平台开发,直播各个分类单例设计展示 一. 饿汉式实现 立即加载就是使用类的时候已经将对象创建完毕(不管以后会不会使用到该实例化对象,先创建了再说.很着急的样子,故又被称为"饿汉模式&qu ...

  4. 连接池-Connection pools

    1.为什么使用连接池 -创建连接需要消耗时间和资源 -Connection pools可以使在特定页面运行过后,连接能够保持下来 2.使用连接池和不使用连接池的比较 3.ADO.NET中的连接池 -如 ...

  5. 数据库连接池 Connection Pool 是什么,做什么

    重新拾起Java来学,就遇到了一本不错的书<Hibernate 深入浅出>电子工业出版社,相较其他的工具类书,本书中用词更加生动活泼,从字句之间就可以看出作者的用心与深厚的文字功底,让人相 ...

  6. sqlserver连接池Min Pool Size

    今天遇到了关于Sql Server最大连接数(Max Pool Size)的配置问题 Timeout expired 超时时间已到. 达到了最大池大小 错误及Max Pool Size设置 参考数据库 ...

  7. 实现连接池技术的样例

    1. 在tomcat的安装文件夹下conf文件夹下的context.xml文件加入例如以下代码: <Resource name="jdbc/course" auth=&quo ...

  8. 闭关修炼(十)单例设计

    单例.工厂.代理这些简单的设计模式都应该掌握(手写) 文章目录 设计模式 什么是设计模式? 设计模式的作用? 23种设计模式 设计模式六大原则 单例 什么是单例 懒汉式 饿汉式 设计模式 什么是设计模 ...

  9. 【轻松学】Python面向对象编程——类的设计、基础语法、继承、多态、类属性和类方法、单例设计

    文章目录 1. 类的设计 大驼峰命名法 1.1 类名的确定 1.2 属性和方法的确定 练习 1.1 练习 1.2 2. 面相对象基础语法 2.1 定义简单的类(只包含方法) 2.1.1 定义只包含方法 ...

最新文章

  1. 菜鸟崛起 DB Chapter 2 MySQL 5.6的概述与安装
  2. 软件详细设计说明书_校导周绪龙|软件测试第五篇——软件测试的底层思维
  3. 企业微服务:实现crud操作之创建实体类
  4. vue v-Model
  5. CF388D-Fox and Perfect Sets【dp,线性基】
  6. 如何处理班级过多的问题
  7. 【 POJ - 2033 】Alphacode (dp,有坑)
  8. singer页左侧滚动的时候右侧跟随高亮显示
  9. AngularJS第六课(路由)
  10. scala代码示例_Scala元组和地图示例
  11. sql select 输出多行_SQL复杂查询
  12. m1芯片 服务器,今天来说说苹果M1 和华为ARM PC芯片
  13. 重磅:使用UOS微信桌面版协议登录,wechaty免费版web协议重放荣光
  14. 【现代货币银行学】货币与货币制度
  15. 小区物业管理系统计算机科学技术,智能化小区物业管理系统关键技术研究
  16. 开源美狐美颜SDK功能代码分析
  17. css3波浪动画特效
  18. 全栈工程师的百宝箱:黑魔法之文档篇
  19. 多旋翼无人机组合导航系统-多源信息融合算法附Matlab代码
  20. 大疆飞行模拟器 下载、安装及使用教程

热门文章

  1. 蓝牙协议分析(6)_BLE地址类型(蜗窝科技)
  2. Generic Access Profile (GAP)
  3. 数据挖掘 —— 探索性数据分析
  4. 计算机游戏88关,天天象棋88关怎么过 闯关模式第88关图文攻略
  5. seq2seq编码器和解码器:TensorFlow实现
  6. 深度学习的数学 (6)误差反向传播法必需的链式法则
  7. CDN (2)特点和功能
  8. 操作系统课设--具有二级索引的文件系统
  9. 16、HTML密码框
  10. 1.6 @FunctionalInterface注解