Struts2配置与应用详解:action与拦截器

需积分: 0 1 下载量 78 浏览量 更新于2024-08-17 收藏 922KB PPT 举报
在Struts2开发详解全面版中,主要讲解了如何配置struts.xml文件以及其在Web应用开发中的关键作用。struts.xml文件是Struts2的核心配置文件,用于定义Action和结果映射,以及配置拦截器和插件。在给出的代码片段中,我们看到一个名为"aa"的包(namespace)被定义,其基础是"struts-default"包。包中定义了一个名为"login*"的动作(action),对应于类`com.cn.PersonAction`中的相应处理方法。对于用户输入验证,通过使用 `<s:fielderror>` 标签,可以检查并显示字段级别的错误信息,如用户名和手机号的非空性和格式检查。 在Struts2中,与Struts1相比,有几个显著的优势。首先,Struts2采用无侵入式设计,与Servlet API和Struts API解耦,使得应用更灵活,不需要硬编码对底层API的依赖。其次,引入了拦截器机制,使得开发者可以实现面向切面编程(AOP),例如实现权限控制等功能,这在Struts1中较为复杂。类型转换器也是Struts2的一个改进,允许自动将特殊请求参数转换为所需类型,避免了在Struts1中手动注册转换器的繁琐。 此外,Struts2支持多种表现层技术,如JSP、FreeMarker和Velocity,这增强了模板的选择性和灵活性。与Struts1相比,Struts2的输入验证更加细化,可以针对特定方法进行验证,提高了用户体验和代码的可维护性。最后,Struts2提供了全局、包和Action范围的国际化资源文件管理,有助于处理多语言应用的需求。 升级Struts1到Struts2时,核心的变化是控制器实现方式:Struts1使用ActionServlet,而Struts2则依赖于一个过滤器来执行Action逻辑。这种变化简化了架构,并促进了更现代的开发实践。 总结来说,配置struts.xml文件是Struts2项目开发的基础,它定义了应用的行为逻辑和用户界面交互。Struts2的优点在于其松耦合设计、拦截器和类型转换器的功能,以及对国际化和表现层技术的支持,这些都是提升Web应用质量和开发效率的关键因素。