客户端提交一个请求
请求被提交到服务器端的过滤器,如ActionContextCleanUp、其他过滤器siteMesh、FilterDispatcher等
询问ActionMapper,把请求交给ActionProxy
ActionProxy通过configuration
ActionProxy创建ActionInvocation并通过代理模式调用Action
Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的result结果
Struts2框架执行流程
客户端从视图层提交请求到服务器端,服务器端通过strus2的核心过滤器进行过滤处理。filterDispatcher(核心控制器)根据用户的配置文件信息找到相应处理该请求的业务逻辑控制器并转发到该业务逻辑控制器。在业务逻辑控制器中将具体进行业务逻辑处理,并将数据封装到模型层中。这个模型层通常是业务逻辑控制器中的成员变量。最后转发相应的视图文件。并将模型当中的数据进行显示。
Struts2的工作原理
1、客户端提交一个请求
2、FilterDispatcher(核心控制器)根据请求调用相应的业务逻辑控制器
3、struts2的拦截器链自动对该请求分用不同的功能。如上传,数据校验等。
4、回调业务逻辑控制器中的execute()方法,该方法体内将数据填充到模型组件中
5、将业务逻辑控制器中execute()方法执行结果信息输出到客户端进行显示。