说明:运用共享技术有效地支持大量细粒度的对象。(连接池、线程池)
需求:数据库连接池
解决方式:
a. 定义一个享元抽象类,定义抽象类的方法;
b. 分别定义享元对象的共享具类、非共享具体类;
c. 定义一个享元工厂类,声明享元的map(Hashtable线程安全),获取享元方法(这里面可以通过判断map的大小来判断是否初始化享元对象);
需求变更:连接池增加一个链接数
解决方式:
享元工厂类修改享元对象map的大小值
类图:
说明:运用共享技术有效地支持大量细粒度的对象。(连接池、线程池)
需求:数据库连接池
解决方式:
a. 定义一个享元抽象类,定义抽象类的方法;
b. 分别定义享元对象的共享具类、非共享具体类;
c. 定义一个享元工厂类,声明享元的map(Hashtable线程安全),获取享元方法(这里面可以通过判断map的大小来判断是否初始化享元对象);
需求变更:连接池增加一个链接数
解决方式:
享元工厂类修改享元对象map的大小值
类图:
相关文章: