Struts2
1.需求 彌補servlet的不足
servlet缺點: web.xml配置量太多,不利於團隊開發;
servlet具有容器依賴性,不利於單元測試;
思考:能否通過過濾器和反射來分散業務開發?
1.Action代替servlet
2.struts.xml代替web.xml做配置;
2.滿足需求
struts優點: web.xml只需配置一個filter,struts.xml
struts2執行流程
1.點擊發出請求;
2.過濾請求;
3.解析請求 namespace和name,並執行對應的class;
4.根據action的返回值,執行對應的頁面跳轉;
如何進行模塊區分?命名空間 namespace;
注意:請求時使用namespace;
響應是給result添加命名空間namespace;
啓動Tomcat服務器的時候,會去創建web.xml中的過濾器,而該過濾器的init方法中會去加載三個佈局文件struts-default.xml,struts-plugin.xml和struts.xml;
客戶端發出請求,服務器對請求進行解析,並以解析結果去獲取響應的action執行任務,同時根據執行任務返回值去獲取響應的jsp返回給客戶端;
struts.xml是對action的訪問條件和響應方式的配置,那麼如何複用配置代碼呢?
1.繼承框架提供的配置,name= "person" namespace="/person" extends=“struts-default”
2.繼承同事提供的配置,name= "student" namespace="/student" extends="person"