<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## 【前言】 去年軟考,從System.out.println("Hello World!")開始,小編也算是進入java的世界了。轉戰java以后,雖然仍舊在學習.NET的知識,但越學越發現語言都是相通的。單從java的語法基礎來看,他和C#語法就很類似,經常讓人覺得傻傻分不清楚。OO的思想就更是這樣了,抽象、繼承、封裝,這些東西更是不被語言所影響。最近接觸到SSH框架,本著“囫圇吞棗”的學習理念,先做了兩個小項目,才進行了理論性的學習。理論學習了一段時間了,還是覺得總體思路上有點亂,因此停下來,整理下思路。 ## 【SSH】 SSH,即Struts+Hibernate+Spring的一個集成框架。單從分層來看,ssh可以看作一個三層或者四層的架構,即Web(UI)層、業務邏輯層、(Dao層)、持久化層。如圖: ![](https://box.kancloud.cn/2016-04-27_57206b064c6f9.jpg) 那么具體每個框架的作用是什么呢? Struts ?——顯示層(UI Layer/Presentation Layer) Spring——業務邏輯層(Business Layer) Hibernate——持久化層(Persistence Layer) ![](https://box.kancloud.cn/2016-04-27_57206b0664fd4.jpg) 在表示層中,首先通過JSP頁面實現交互界面,負責傳送請求(Request)和接收響應(Response),然后Struts根據配置文件(struts-config.xml)將ActionServlet接收到的Request委派給相應的Action處理。 在業務邏輯層中,管理服務組件的Spring IoC容器負責向Action提供業務模型(Model)組件和該組件的協作對象數據處理(DAO)組件完成業務邏輯,并提供事務處理、緩沖池等容器組件以提升系統性能和保證數據的完整性。 數據持久層中,則依賴于Hibernate的對象化映射和數據庫交互,處理DAO組件請求的數據,并返回處理結果。 ## 【思維導圖】 Struts,是整個系統的基礎架構,實現了MVC的分離,主要用在MVC的視圖層,控制轉發。 Hibernate對JDBC進行了封裝,使得開發人員可以用面向對象等程序思維來操縱數據庫,如Hibernate提供自動建表,我們只需要編寫類,而不需要關心表的內部結構和生成過程。 Spring是一個輕量級的容器框架,可以用來管理Struts和Hibernate。spring可以管理類與類之間的依賴關系,實現控制反轉,而不需要在代碼里操作。另外,AOP可以使業務邏輯更加清晰,團隊開發的分工變得簡單可行,也大大了解耦了。 詳細的介紹參加下面的思維導圖。由于空間原因,細節部分就不再展示了。 ![](https://box.kancloud.cn/2016-04-27_57206b067aa15.jpg)
                  <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>

                              哎呀哎呀视频在线观看