享元模式
来源:互联网 发布:淘宝售后客服工作总结 编辑:程序博客网 时间:2024/06/05 19:35
import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.Vector;public class ConnectionPool { private Vector<Connection>pool = null; private String url = "jdbc:mysql://localhost:3306/test"; private String username = "root"; private String password = "root"; private String driverClassName = "com.mysql.jdbc.Driver"; private int poolSize = 100; private static ConnectionPool instance = null; Connection conn = null; /*构造方法,做一些初始化工作*/ private ConnectionPool() { pool = new Vector<Connection>(poolSize); for (int i = 0; i < poolSize; i++) { try { Class.forName(driverClassName); conn = DriverManager.getConnection(url, username, password); pool.add(conn); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } } /* 用完后返回连接到连接池 */ public synchronized void release() { pool.add(conn); } /* 分配连接池中的一个数据库连接 */ public synchronized Connection getConnection() { if (pool.size() > 0) { Connection conn = pool.get(0); pool.remove(conn); return conn; } else { return null; } } }
享元模式主要目的是实现对象的共享,即共享池,当系统中对象多的时候可以减少内存的开销,通常与工厂模式一起使用。例如:JDBC连接池! 真的这种设计模式很nice!
——贴上自己喜欢的代码!
0 0
- 深入浅出享元模式
- 享元模式
- 享元(FlyWeight)模式
- 享元模式
- 享元模式
- 享元模式
- 享元模式
- 享元模式Flyweight
- 享元模式
- 享元模式
- 享元模式
- FlyWeight 享元模式
- 享元模式(Flyweight)
- 享元模式
- 享元模式
- 享元模式
- 享元模式
- 享元模式 ---flyweight
- 百度Push服务SDK用户手册(iOS版)
- js 获取地址栏参数
- 【PHP内核】语法:不同类型之间数值运算的实现
- Objc -- Runtime 简单入门(代码实例)
- 【BZOJ 2179】 FFT快速傅立叶|FFT
- 享元模式
- 使用SimpleDateFormat顺利解析日期
- c++中的虚函数
- 【小程序】使用io流实现对字符串的编码和解码
- pullToRefresh的使用
- Android DiskLruCache完全解析,硬盘缓存的最佳方案
- JavaMail发送邮件
- linux-file_operations结构体分析记录
- Android应用从建项目开始