Struts 2 框架的大致处理流程如下:
1 浏览器发送请求,例如请求/mypage.action 、/reports/myreport.pdf 等。
2 核心控制器FilterDispatcher 根据请求决定调用合适的Action 。
3 WebWork 的拦截器链自动 对请求应用通用功能,例如workflow 、validation 或文件上传等功能。
4 回调Action 的execute 方法,该execute 方法先获取用户请求参数,然后执行某种数据库操作,既可以是将数据保存到数据库,也可以从数据库中检索信息。实际上,因为Action 只是一个控制器,它会调用业务逻辑组件来处理用户的请求。
5 Action 的execute 方法处理结果信息将被输出到浏览器中,可以是HTML 页面、图像,也可以是PDF 文档或者其他文档。此时支持的视图技术非常多,既支持JSP ,也支持Velocity 、FreeMarker 等模板技术。