Struts2的配置加载的情况与Spring一样,也是需要在web.xml中进行配置。由于二者的加载原理不同,因此它们的配置项也有很大的差别。Spring是实现Listener或Servlet
的接口进行配置,但是Struts2是利用Filter来配置加载的。
由于Struts2的版本相差很大,其在web.xml的配置方式也不一样。
Struts2.13版本之前,是利用如下方式配置的:
<filter> <!--过滤器名字 --> <filter-name>struts2</filter-name> <!-- 过滤器支持的struts2类 --> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <!--过滤器拦截名字 --> <filter-name>struts2</filter-name> <!--过滤器拦截文件路径方式 --> <url-pattern>/*</url-pattern> </filter-mapping> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
但在Struts2.13之后,其配置的拦截器的方式改变了:
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
上面2种配置方式,web工程默认加载的Struts2的配置文件,是\WEB-INF\classes\struts.xml文件。在该struts.xml文件中可以定义Action,拦截器Interceptor等等。