Struts2.020072月份开始发布的,它整合了当今两大主流的web应用开发框架,Struts1webwork2,吸取了诸多开源框架的优点,是官方推荐的Web开发框架。Struts2使用配置文件支持客户端和服务器端的验证,Strut2的验证配置继承自webWork,因此和Strut1的验证配置有很大的不同。Strut2可以很好的支持Spring,所有的Action实例配置在SpringApplicationContext.xml中,可以通过Spring的依赖注入直接调用模型层的代码,实现StrutsSpring框架的无缝结合,这是比Strut1强大的技术特征之一。Strut2使用了拦截器模式,大量采用了拦截器堆栈,对于任何一个请求,先经过一系列拦截器的处理之后才真正调用Action的方法。Struts框架的模型如图所示:Struts2_职场
请求的处理流程是[21]
1.        浏览器请求一个资源,比如(/mypage.action /reports/myreport.pdf et cetera)
2.        Servlet过滤器查找请求并决定把请求发送到那个Action
3.        拦截器拦截调用,并应用拦截器实现的功能。
4.        Action执行请求并返回一个String类型的结果
5.        返回的结果经过渲染后返回到客户端。
 
在本课题的实现过程中,信息发布系统的后台是采用Strut2实现的,数据在客户端和服务器端根据配置文件进行双层验证,保证了数据输入的有效性和可提示性,使用资源文件存储所有需要显示的界面信息,为实现信息发布界面国际化打下良好基础。Shut2Spring框架的结合,提高了程序的可配置性,采用面向接口的编程方式提高了程序的可测试性,并且使得更改接口的实现变得简单。