1.什么是struts2
它是由Struts1和WebWork的基础进行了合并并产生一个全新的框架(Struts2),又以WebWork为核心,采用拦截器的机制来处理客户发送的请求,在处理请求时,回去读取web.xml配置文件,根据配置器文件讲符合条件的请求,分配给各个不同的Action层的方法。
Struts2 框架提供了许多的拦截器,在封装数据的过程中,我们可以对数据进行一些操 作,例如:数据校验等等。当 Action 执行完后要返回一个结果视图,这个结果视图可以跟据 struts2 的配置文件中 配置,选择转发或者重定向。
其实也可以一句话概括一下:Struts框架是一个严格按照MVC分层思想,把客户端和服务端之间的响应按照流程编写的开发框架
的大大师傅的阿达
2.Struts2的流程控制
从下面的图片可以很好的区了解Struts的流程
1.客户发送了一个request请求
2.这个请求经过了一系列的过滤器,比如ActionContextCleanUp,otherFilters,FilterDispatcher
3.当请求经过FilterDispacher,去访问ActionMapper,ActionMapper根据请求url地址去匹配对应的Action(这个Action只是路径)
4.ActionMapper把Action路径交给FilterDispatcher,FilterDispatcher把Action路径交给ActionProxy,就会产生Action代理对象。
5.Action中的方法被调用之前,首先需要经过若干拦截器。然后返回action执行结果。再反抄向经过若干拦截器。最终把执行结果发送给客户。