下圖簡要說明Java網路應用程式的架構。
Client端,也就是使用者(User),透過瀏覽器發送HTTP Request (URL)至特定位址的網路伺服器(HTTP Server)(這個網路伺服器就是Java應用程式運行的地方),伺服器收到Request後轉交給WebContainer(Web容器)。
WebContainer根據Deployment Descriptor,也就是web.xml
文件的配置搜尋request對應的Servlet程式,並將request用物件包裝好傳入Servlet程式,然後Servlet程式開始根據程式人員撰寫的邏輯來執行,執行後將結果透過Response回傳給Client端,通常會是一個html文件。
所以Java程式人員所的工作就是在Servlet中撰寫處理的邏輯程式碼,例如Client送來的Request中可能包含一些資訊例如姓名,電話等,程式人員根據需求可撰寫程式將資料存入資料庫,或是轉發一封郵件,或是至資料庫查詢更多相關資料等。
WebContainer本身其實也是一個應用程式,負責用來運行程式人員撰寫的Java應用程式,也就是Servlet,並將從Client接收來的HTTP Request資料包裝成Request物件。在Java中最常見的WebContainer大概就是Apache Tomcat了,當然還有其他如Oracle的WebLogic,GlassFish,redhat的Jboss及IBM的WebSphere等。
不過目前Spring MVC已經是Java網路應用程式的開發主流了,然而Spring MVC的底層還是透過Servlet來運行喔。
其實本篇只是放一下自己畫的架構圖啦,不放上來網路有點浪費。
沒有留言:
張貼留言