<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 第13章 代理模式 ### 什么是代理模式 1. 在客戶端與實體之間建立一個代理對象(proxy),客戶端對實體進行操作全部委派給代理對象,隱藏實體的具體實現細節 2. Proxy還可以與業務代碼分離,部署到另外的服務器。業務代碼中通過RPC來委派任務 ### 第一步:傳統的客戶端請求數據庫的操作 *D:\wamp\www\demo\oop\framework\index.php* ~~~ // 從庫 $db = Think\Factory::getDatabase('slave'); $info = $db->query("SELECT * FROM user WHERE id = 1 limit 1"); // 主庫 $db1 = Think\Factory::getDatabase('master'); $db1->query("UPDATE user SET name = 'lili' WHERE id = 1 limit 1"); ~~~ ### 第二步:創建1個代理接口作為約束 *D:\wamp\www\demo\oop\framework\Think\IUserProxy.php* ~~~ <?php namespace Think; interface IUserProxy { function getUserName($id); function setUserName($id, $name); } ~~~ ### 第三步:聲明1個代理類 *D:\wamp\www\demo\oop\framework\Think\Proxy.php* ~~~ <?php namespace Think; class Proxy implements IUserProxy { function getUserName($id) { $db = Think\Factory::getDatabase('slave'); $info = $db->query("SELECT * FROM user WHERE id = {$id} limit 1"); } function setUserName($id, $name) { $db1 = Think\Factory::getDatabase('master'); $db1->query("UPDATE user SET name = '{$name}' WHERE id = {$id} limit 1"); } } ~~~ ### 第四步:使用代理模式 *D:\wamp\www\demo\oop\framework\index.php* ~~~ $proxy = new Think\Proxy(); $proxy->getUserName($id); $proxy->setUserName($id, $name); ~~~ 這樣做的好處就是隱藏了數據庫的操作。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看