<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://m.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://m.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://m.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://m.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://m.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://m.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
    @草包書生
    呵呵,有利有弊的  回復  更多評論
      

    主站蜘蛛池模板: 花蝴蝶免费视频在线观看高清版| 亚洲av无码专区在线观看下载 | 华人在线精品免费观看| 亚洲男人的天堂在线va拉文| 狼人大香伊蕉国产WWW亚洲| 好爽好紧好大的免费视频国产| 亚洲天堂2016| 成人无遮挡毛片免费看| 亚洲一卡一卡二新区无人区| 大学生一级特黄的免费大片视频| 亚洲成a人片在线看| 久久久久久免费视频| 国产精品亚洲精品| 国产麻豆免费观看91| 老司机福利在线免费观看| 亚洲欧洲日本在线| a级毛片在线免费看| 亚洲男人第一av网站| 99久久99久久精品免费看蜜桃| 亚洲五月丁香综合视频| 免费人妻无码不卡中文字幕18禁| 一级女性全黄久久生活片免费| 亚洲中文字幕无码日韩| 热re99久久6国产精品免费| 亚洲国产成a人v在线| 热99re久久精品精品免费| 一级成人a做片免费| 亚洲今日精彩视频| 99久久这里只精品国产免费| 美女被免费网站在线视频免费 | 亚洲黄片手机免费观看| 亚洲成AV人片在WWW色猫咪| 亚洲精品免费网站| 猫咪www免费人成网站| 亚洲国产精品无码中文字| 免费在线看v网址| 污视频网站免费在线观看| 亚洲国产精品第一区二区| 德国女人一级毛片免费| 四虎影视无码永久免费| 久久综合久久综合亚洲|