<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    waysun一路陽光

    不輕易服輸,不輕言放棄.--心是夢的舞臺,心有多大,舞臺有多大。踏踏實實做事,認認真真做人。

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      167 隨筆 :: 1 文章 :: 64 評論 :: 0 Trackbacks

    一.工廠模式,以數據庫的業務邏輯為簡單例子,里面有很多不合理的地方,目的是為了闡述對工廠模式的理解。

    1.聲明接口BaseDAO

    /**
     **<p>工廠接口</p>
     **作者:    
     **Blong:http://www.tkk7.com/1504
     **E-mail:yyk1504@163.com
     **QQ:251218333
     **<p>2008-12-16 下午02:08:15</p>
    */
    package cn.com.model.factory;

    import java.sql.Connection;

    public interface BaseDAO
    {
        /**數據庫的插入方法*/
        public void save();  
        /**數據庫的更新方法*/
        public void update();
        /**數據庫的刪除方法*/
        public void delete();
    }

    2.MYSQL具體實現MysqlDAO

    *<p>Mysql數據庫實現業務邏輯類</p>
     *作者:    
     *Blong:http://www.tkk7.com/1504
     *E-mail:yyk1504@163.com
     *QQ:251218333
     *<p>2008 2008-12-16 </p>
    */
    package cn.com.model.factory;

    import java.sql.Connection;
    import java.sql.DriverManager;

    public class MysqlDAO implements BaseDAO
    {

        public void delete()
        {
            /**
             *<p>此方法的功能介紹</p>
             *delete
             *MysqlDao
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:16:27</p>
            */
            System.out.println("Mysql在此處實現刪除....");
        }

        public void save()
        {
            /**
             *<p>此方法的功能介紹</p>
             *save
             *MysqlDao
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:16:27</p>
            */
            System.out.println("Mysql在此處實現保存....");
        }

        public void update()
        {
            /**
             *<p>此方法的功能介紹</p>
             *update
             *MysqlDao
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:16:27</p>
            */
            System.out.println("Mysql在此處實現更新....");
        }

        
    }

    3.SQL2000具體實現類

    /**
     *<p>MsSql2000數據庫實現業務邏輯類</p>
     *作者:    
     *Blong:http://www.tkk7.com/1504
     *E-mail:yyk1504@163.com
     *QQ:251218333
     *<p>2008 2008-12-16 </p>
    */
    package cn.com.model.factory;

    import java.sql.Connection;
    import java.sql.DriverManager;

    public class MsSql2000DAO implements BaseDAO
    {

        public void delete()
        {
            /**
             *<p>此方法的功能介紹</p>
             *delete
             *MsSql2000DAO
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:21:04</p>
            */
            System.out.println("MsSql2000在此處實現刪除....");
        }

        public void save()
        {
            /**
             *<p>此方法的功能介紹</p>
             *save
             *MsSql2000DAO
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:21:04</p>
            */
            System.out.println("MsSql2000在此處實現保存....");
        }

        public void update()
        {
            /**
             *<p>此方法的功能介紹</p>
             *update
             *MsSql2000DAO
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:21:04</p>
            */
            System.out.println("MsSql2000在此處實現更新....");
        }

        }

    4.SQL2005具體實現類

    /**
     *<p>MsSql2005數據庫實現業務邏輯類</p>
     *作者:    
     *Blong:http://www.tkk7.com/1504
     *E-mail:yyk1504@163.com
     *QQ:251218333
     *<p>2008 2008-12-16 </p>
    */
    package cn.com.model.factory;

    import java.sql.Connection;
    import java.sql.DriverManager;

    public class MsSql2005DAO implements BaseDAO
    {

        public void delete()
        {
            /**
             *<p>此方法的功能介紹</p>
             *delete
             *MsSql2005DAO
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:23:38</p>
            */
            System.out.println("MsSql2005在此處實現刪除....");
        }

        public void save() {
            /**
             *<p>此方法的功能介紹</p>
             *save
             *MsSql2005DAO
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:23:38</p>
            */
            System.out.println("MsSql2005在此處實現保存....");
        }

        public void update()
        {
            /**
             *<p>此方法的功能介紹</p>
             *update
             *MsSql2005DAO
             *
             *Author:ASUS_1
             <p>2008 2008-12-16 下午02:23:38</p>
            */
            System.out.println("MsSql2005在此處實現更新....");
        }

        
    }

    5.ORACLE具體實現類

    /**
     **<p>Oracle數據庫實現業務邏輯類</p>
     **作者:    
     **Blong:http://www.tkk7.com/1504
     **E-mail:yyk1504@163.com
     **QQ:251218333
     **<p>2008-12-16 下午02:11:59</p>
    */
    package cn.com.model.factory;

    import java.sql.Connection;
    import java.sql.DriverManager;

    public class OracleDAO implements BaseDAO
    {

        public void delete()
        {
            /**
             *<p>此方法的功能介紹</p>
             *delete
             *OracleDao
             *
             *Author:ASUS_1
             *<p>2008 2008-12-16 下午02:12:59</p>
            */
            System.out.println("Oracle在此處實現刪除....");
        }

        public void save()
        {
            /**
             *<p>此方法的功能介紹</p>
             *save
             *OracleDao
             *
             *Author:ASUS_1
             *<p>2008 2008-12-16 下午02:12:59</p>
            */
            System.out.println("Oracle在此處實現保存....");
        }

        public void update()
        {
            /**
             *<p>此方法的功能介紹</p>
             *update
             *OracleDao
             *
             *Author:ASUS_1
             *<p>2008 2008-12-16 下午02:12:59</p>
            */
            System.out.println("Oracle在此處實現更新....");
        }

      
    }

    6.工廠類

    /**
     *<p>數據庫業務工廠</p>
     *作者:    
     *Blong:http://www.tkk7.com/1504
     *E-mail:yyk1504@163.com
     *QQ:251218333
     *<p>2008-12-16 </p>
    */
    package cn.com.model.factory;
    import cn.com.model.factory.*;
    public class DaoFactory

    {
         public BaseDAO createFactory(String type)
         {   
                     if ("Mysql".equals(type))
                     {   
                         return new MysqlDAO();   
                     }
                     else
                     if ("MsSql2000".equals(type))
                     {   
                         return new MsSql2000DAO();   
                     }
                     else  
                     if ("MsSql2005".equals(type))
                     {   
                         return new MsSql2005DAO();   
                     }
                     else  
                     if ("Oracle".equals(type))
                     {   
                         return new OracleDAO();   
                     }
                         return null;   
                 }   
               
                 public static void main(String[] args)
                 {   
                     DaoFactory creator = new DaoFactory();   
                     BaseDAO mysqlDAO=creator.createFactory("Mysql");  
                     mysqlDAO.save();
                     mysqlDAO.update();
                     mysqlDAO.delete();
                    
                     System.out.println("---------------------------------");
                    
                     BaseDAO msSql2000DAO=creator.createProduct("MsSql2000");  
                     msSql2000DAO.save();
                     msSql2000DAO.update();
                     msSql2000DAO.delete();
                    
                     System.out.println("---------------------------------");
                    
                     BaseDAO msSql2005DAO=creator.createProduct("MsSql2005");  
                     msSql2005DAO.save();
                     msSql2005DAO.update();
                     msSql2005DAO.delete();
                    
                     System.out.println("---------------------------------");
                    
                     BaseDAO oracleDAO=creator.createProduct("Oracle");  
                     oracleDAO.save();
                     oracleDAO.update();
                     oracleDAO.delete();

                 }    
    }

     

    posted on 2008-12-16 16:50 weesun一米陽光 閱讀(2297) 評論(4)  編輯  收藏 所屬分類: 23種編程模式

    評論

    # re: java設計模式(1)--工廠模式及其實例【原創】 2008-12-16 16:53 草包書生
    堅決反對用mysql,前一段時間用mysql弄德我哭笑不得。還是用sql好。  回復  更多評論
      

    # re: java設計模式(1)--工廠模式及其實例【原創】 2008-12-16 21:23
    樓上的你太太太夸張了吧?
    習慣問題  回復  更多評論
      

    # re: java設計模式(1)--工廠模式及其實例【原創】 2008-12-17 09:36 caiban
    不能因為你不習慣就說mysql不好吧
    那我不習慣SQL,是否也可以說:堅決反對用mssql,前一段時間用mssql弄德我哭笑不得。還是用mysql好。呵呵  回復  更多評論
      

    # re: java設計模式(1)--工廠模式及其實例【原創】 2011-12-16 23:16 chzhxiang
    @草包書生
    呵呵,有利有弊的  回復  更多評論
      

    主站蜘蛛池模板: 亚洲精品线路一在线观看 | 中文字字幕在线高清免费电影| 亚洲日本中文字幕天堂网| 国内少妇偷人精品视频免费| 亚洲免费在线视频播放| 一本色道久久88亚洲综合 | 亚洲人成自拍网站在线观看| 中文字幕精品无码亚洲字| 人与禽交免费网站视频| 一级做a爰片久久毛片免费陪 | 亚洲国产综合在线| 亚洲av午夜成人片精品电影| 99热在线观看免费| 羞羞视频在线观看免费| 亚洲jjzzjjzz在线观看| 亚洲中文字幕久久精品无码APP | 亚洲精品久久无码| 亚洲AV日韩AV鸥美在线观看| 日韩成全视频观看免费观看高清| 99精品视频免费| 亚洲午夜无码久久| 久久噜噜噜久久亚洲va久| 凹凸精品视频分类国产品免费| 精品女同一区二区三区免费站| 国产精品免费观看视频| 亚洲综合精品成人| 亚洲国产精品不卡在线电影| 亚洲Av无码乱码在线观看性色| 黄页网站在线看免费| 免费在线看污视频| 黄色免费网站在线看| 亚洲综合av一区二区三区| 久久久久亚洲av无码专区导航| 亚洲区小说区图片区| 四虎永久在线精品免费影视| 无码国产精品一区二区免费式影视| 在线观看免费黄网站| 一级做a爰片久久免费| 国产成人亚洲午夜电影| 亚洲色中文字幕在线播放| 内射干少妇亚洲69XXX|