對應struts1,需要兩個配置文件,即web.xml , struts-config.xml
web.xml:
對應一個應用,注意配置項如下:
context-param,設置servlet的上下文參數,可被listener或者servlet使用,使用方法是ServletContext.getInitParameter獲取context-param中定義的參數
listener,監聽器,系統啓動會爲每個listener創建實例,當事件發生時,系統查看listener的實例數組,如果有與該事件對於的監聽器,則執行相應的方法,例:如果一個listener實現了ServletContextListener接口,則當該應用開啓時會調用這個listener的contextInitialized方法。
再如,一個listener實現了HttpSessionListener接口,當Session創建事件發生,即每次一個新的session創建的時候,會找到相應的listener實例,然後調用sessionCreated方法,類似地Session失效事件發生時,即每次一個Session失效的時候會調用sessionDestroyed方法。
servlet,定義一個servlet,即名字和實現類
servlet-mapping,將一個servlet與一個url對應起來
error-page,定義一些錯誤碼對應的文件,一般是jsp,然後java中可調用response.sendError設置錯誤碼,則系統會根據錯誤碼與error-page中定義的匹配,然後返回對應的jsp,注,不能用response.setStatus,這個方法被用於當響應結果正常時(例如,狀態碼爲SC_OK或SC_MOVED_TEMPORARTLY)設置響應狀態碼。
filter,定義一個過濾器,即名字和實現類
filter-mapping,將一個filter與url或servlet對應起來
jsp-config,包含<taglib> 和 <jsp-property-group> 兩個子元素,對於taglib,定義名字和對應的tld位置,jsp中可以用名字引用。
session-config, 包含session-timeout屬性,即客戶端連續兩次與服務器交互間隔時間最長的時間,該時間後session.getAttribute()獲取的值爲空
security-constraint,包含web-resource-collection,用來定義資源組,http-method,用來禁止http哪些方法不可以訪問該資源組,auth-constraint-> role,用於定義可以訪問資源的角色(這些角色可以是TOMCAT的tomcat-user.xml文件中定義的默認角色及用戶,也可以是自己創建的數據庫角色與用戶表。角色與用戶名的對應關係存在server.xml中定義的realm中)
login-config,包含auth-method,定義採用哪種認證方法
struts-config.xml: