日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

包装设计模式——

發布時間:2023/12/2 asp.net 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 包装设计模式—— 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
首先建立數據連接成(自己建立的)
/**
?* 存在必要性?
?* ?? ??? ?數據庫連接作為非常重要的資源 ,用完了要不要立即銷毀?----(不能立即關閉)
?* 不能立即關閉?誰維護
?* ?? ??? ??? ?---------------專門交給一個人來管理(池-----------池子中放了好多數據庫連接)
?*
?* 非常 有必要存在!!!
?* ?? ??? ??? ??? ?池子在java類中如何表現?--------------------集合--------(Connection)----用什么集合?
?*
?* List? 集合來模擬池
?* ?? ??? ??? ?1.初始化一些連接
?*
?* @author wangli
?*
?*/
public class MyDataSource1 {
?? ?private static? List<Connection> pool = new ArrayList<Connection>();//池子
?? ?private static int size=10;
?? ?public static void setSize(int size) {
?? ??? ?MyDataSource1.size = size;
?? ?}
?? ?
?? ?//初始化池中的連接
?? ?static{
?? ??? ?try {
?? ??? ??? ?for (int i = 0; i < size; i++) {
?? ??? ??? ??? ?pool.add(JdbcUtil.getConnection());
?? ??? ??? ?}
?? ??? ?} catch (Exception e) {
?? ??? ??? ?e.printStackTrace();
?? ??? ?}
?? ??? ?
?? ?}
?? ?
?? ?//統一提供方法,用于從池中獲取連接
?? ?public static synchronized Connection getConnection(){
?? ??? ?if(pool.size()>0){
?? ??? ??? ?Connection con =? pool.remove(0);//刪除這個連接,因為別人此時不能再用它
?? ??? ??? ?
?? ??? ??? ?//真正開始包裝 別人
?? ??? ??? ?MyConnection2 con2 = new MyConnection2(con,pool);
?? ??? ??? ?return con2;
?? ??? ?}else{
?? ??? ??? ?throw new RuntimeException("池中無連接");
?? ??? ?}
?? ??? ?
?? ?}
?? ?
?? ?//還回一個連接到池中
?? ?public static void close(Connection con){
?? ??? ?pool.add(con);//將這個連接回收到池中
?? ?}

?? ?//取池
?? ?public static List<Connection> getPool() {
?? ??? ?return pool;
?? ?}
?? ?
?? ?
?? ?
}


一、外包裝和被包裝實現一樣的接口
public class ConnectionAdapter implements Connection { } 二、
?//包裝模式???????????????????????????????????? //似你?? ?
public class MyConnection2? extends ConnectionAdapter {
?? ?private Connection con;//還有你
?? ?private List<Connection> pool;
?? ?//拜托你
?? ?public MyConnection2(Connection con,List<Connection> pool){
?? ??? ?this.con? = con;
?? ??? ?this.pool = pool;
?? ?}
?? ?
?? ?@Override? //改寫它
?? ?public void close() throws SQLException {
?? ??? ?pool.add(con);
?? ?}

?? ?
}
三、test測試一下
/*** @param args*/public static void main(String[] args) {MyDataSource1 myds = new MyDataSource1();System.out.println("初始化好了,池中連接數:"+myds.getPool().size());Connection con = myds.getConnection();//從池中取一個連接System.out.println("取出但未還,池中連接數:"+myds.getPool().size());System.out.println("當前連接對象:"+con);try {con.close();//面向接口編程,con其實是MyConnection2? 對象。調用的是MyConnection2 .close()既被包裝后改寫的close()方法。} catch (SQLException e) {e.printStackTrace();}System.out.println("用完后還了,池中連接數:"+myds.getPool().size());}

?




?

轉載于:https://www.cnblogs.com/baijin05/p/5073764.html

總結

以上是生活随笔為你收集整理的包装设计模式——的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 蜜桃av噜噜一区二区三区网址 | 国产日韩精品一区 | 久久久国产精品人人片 | 九九久视频 | 牛牛精品一区 | 亚洲一区二区三区综合 | 久久久精品一区二区 | 3p视频在线观看 | 少妇毛片一区二区三区 | 日韩视频免费在线观看 | 久久久精 | 久久久久国产精品一区二区 | 深夜福利麻豆 | 日本三级韩国三级三级a级中文 | av不卡一区二区 | 看黄色大片 | 久久性精品| 天堂影院一区二区 | 欧美精品videosex极品 | 黄色av一级| 男人天堂2021 | 夜夜嗨网站 | 亚洲免费三区 | 国产精品自偷自拍 | www日韩精品 | 欧美成人精品欧美一级乱 | 黄色成人在线免费观看 | 四虎视频 | 五月天综合视频 | 美女被男生免费视频 | 男女在楼梯上高潮做啪啪 | 欧美日韩综合精品 | 麻豆高清免费国产一区 | 私库av在线 | 麻豆视频观看 | 国产精品丝袜 | 国产精品九九九九 | 午夜精品久久久久久久99热浪潮 | 成人激情视频在线 | 能在线观看的av | 色牛av | 色网站免费看 | 亚洲啪视频| 精品人妻无码在线 | 一区二区播放 | 免费午夜激情 | 欧美一区二区三区观看 | 久久久午夜| 在线观看一二三区 | 日韩爱爱免费视频 | 国产亚洲久一区二区 | 亚洲欧美综合久久 | 国产又爽又黄免费视频 | 好色艳妇小说 | 我的大叔 | 亚洲无吗一区二区三区 | 超碰青娱乐 | 91av免费看 | 久久av资源网 | 在线观看的免费 | 亚洲中文一区二区 | 久精品免费视频 | 日日爱886 | 青青青在线视频观看 | 久久久wwww| 国产成人午夜精品 | 天堂а√在线中文在线新版 | 成人免费视频网站在线观看 | 爱av导航 | 白丝美女喷水 | 国产婷婷色 | 69av网 | 五色天婷婷 | 久久久久久毛片 | 国产一区视频在线免费观看 | 欧美色性视频 | 国产精品免费无码 | 中文字幕不卡av | 日韩美女福利视频 | av大西瓜 | 99视频在线观看视频 | 狼人综合av | 人人玩人人弄 | 红桃视频国产精品 | 污污在线看 | 亚洲精品一区二区三区在线 | 国产高清在线视频 | 无套内谢少妇毛片 | 欧美性生交xxxxxdddd | 女性裸体无遮挡胸 | 一区二区三区四区视频在线观看 | 超碰三级 | 最好看的中文字幕国语电影mv | 99综合色 | 成人做爰视频www网站小优视频 | 日本人妻换人妻毛片 | 亚洲精品亚洲人成人网 | 3d动漫精品h区xxxxx区 | 国产成人精品视频ⅴa片软件竹菊 |