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

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

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

    數據加載中……
    Facade模式的一個典型應用--數據庫JDBC的應用
    Facade模式的定義: 為子系統中的一組接口提供一個一致的界面.Facade一個典型應用就是數據庫JDBC的應用,如下例對數據庫的操作:
    說明:這是在網上的一篇文章中看到的列子,上面沒有寫全,我在這里補上了,沒有用到接口。

    package com.pattern.structural.facade;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    /*
     * 外觀模式的主要用途就是為子系統的復雜處理過程提供方便的調用方法,
     * 使得子系統更加容易被使用。
     * Facade對象通常屬于Singleton模式。
    */
    public class Mysql {
       
        private static Connection conn=null;
        private static PreparedStatement prep=null;

        public Mysql(String sql) {
            try {
                Class.forName("com.mysql.jdbc.Driver").newInstance();
                conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","");
                prep = conn.prepareStatement(sql);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

        public void setString(int index, String parString) {
            try {
                prep.setString(index, parString);
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }

        public ResultSet executeQuery() {
            try {
                return prep.executeQuery();
            } catch (SQLException e) {
                e.printStackTrace();
                return null;
            }
        }

        public void close() {
            try {
                conn.close();
                prep.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }


    package com.pattern.structural.facade;

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;

    public class DBCompare {

        public void getResultSet(String sql) {
    //        String sql = "SELECT * FROM bulletin WHERE id = ?";
            Mysql mysql = new Mysql(sql);
            try {
                mysql.setString(1, "4");
                ResultSet rset = mysql.executeQuery();
                while (rset.next()) {
                    System.out.println(rset.getString("id"));
                }
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                mysql.close();
                mysql = null;
            }
        }
    }


    package com.pattern.structural.facade;

    import java.sql.ResultSet;

    public class FacadeTest {

        public static void main(String[] args) {
           
            Mysql mysql = new Mysql("SELECT * FROM bulletin");
            try {
                ResultSet rset = mysql.executeQuery();
                while (rset.next()) {
                    System.out.println(rset.getString("id"));
                }
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                mysql.close();
                mysql = null;
            }
           
        }

    }

    posted on 2008-02-28 15:27 java flex 結合 閱讀(2691) 評論(5)  編輯  收藏 所屬分類: patternmysql

    評論

    # re: Facade模式的一個典型應用--數據庫JDBC的應用 2008-02-29 10:38 香草的天空

    你這個其實叫Dao

    不素Facade
      回復  更多評論    

    # re: Facade模式的一個典型應用--數據庫JDBC的應用 2008-03-02 14:44 xifu

    Facade的本意是為不同的操作通過封裝提供統一的、一致的操作方法
      回復  更多評論    

    # re: Facade模式的一個典型應用--數據庫JDBC的應用 2008-05-22 12:54  .

    什么跟什么 啊。。。。。。。。。。。。。。。
      回復  更多評論    

    # re: Facade模式的一個典型應用--數據庫JDBC的應用 2010-06-17 10:09 facade

    你不懂
      回復  更多評論    

    # re: Facade模式的一個典型應用--數據庫JDBC的應用 2012-06-07 16:06 kensunhu

    認為Mysql類是個facade,因為符合定義:“Provide a unified interface to a set of interfaces in a subsystem. Facade Pattern defines a higher-level interface that makes the subsystem easier to use.”
      回復  更多評論    

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 暖暖在线视频免费视频| 水蜜桃视频在线观看免费| 成人黄动漫画免费网站视频| 香蕉视频在线观看亚洲| 精品视频在线免费观看| 国产精品亚洲精品日韩已满| 99久久免费国产特黄| 日韩欧毛片免费视频| 亚洲国产精品无码久久久久久曰| 亚洲Av无码国产一区二区| 国产18禁黄网站免费观看| 美女黄频a美女大全免费皮| 亚洲电影日韩精品| 国产黄色片免费看| 精品少妇人妻AV免费久久洗澡| 久久精品国产亚洲7777| 成人精品视频99在线观看免费| 国产精品亚洲精品日韩已满| 18观看免费永久视频| 亚洲 暴爽 AV人人爽日日碰| 在线视频免费国产成人| 亚洲国产成人久久99精品| 中文字幕免费观看视频| 国产精品亚洲片在线| 亚洲一级毛片免费观看| 亚洲成av人影院| 暖暖免费中文在线日本| 国产午夜亚洲精品午夜鲁丝片| 日韩免费的视频在线观看香蕉| 亚洲国产成人在线视频| 免费中文字幕不卡视频| 亚洲精品国产精品| 亚洲国产成人影院播放| 日韩精品无码一区二区三区免费 | 亚洲AV无码久久| 久久久久久精品免费免费自慰| 亚洲老熟女五十路老熟女bbw| 久久精品国产精品亚洲人人| 美女被cao免费看在线看网站| 免费人成大片在线观看播放电影 | 亚洲五月综合缴情在线观看|