Struts2高级应用:框架校验与类型转换
需积分: 0 57 浏览量
更新于2024-08-17
收藏 2.03MB PPT 举报
"本讲主要探讨Struts框架的高级应用,包括Struts2的类型转换、输入校验、文件上传下载、拦截器机制以及在MyEclipse中的实战应用。重点聚焦于不同方法的校验机制,特别是Struts2的类型转换策略。"
在Struts2的类型转换中,由于Web环境的特性,所有的输入和输出数据最初和最终都以字符串形式存在。然而,在服务器端处理这些数据时,通常需要将它们转换为特定的类型。Struts2的类型转换机制是基于XWork库的,能够自动处理基本类型的数据转换,例如从字符串到整型、日期型等的转换。Struts2内建了多种类型的双向转换,如String到各种基本类型,以及日期到字符串的转换。
对于复杂类型的转换,Struts2依赖于OGNL(Object-Graph Navigation Language)来处理。当Action中定义了复合类型的对象,并在JSP页面通过OGNL表达式访问时,Struts2能够自动处理这些对象的转换。例如,可以通过`user.username`这样的表达式直接访问和操作对象属性。
然而,有时内置的转换器可能无法满足所有需求,这时就需要自定义类型转换器。自定义转换器有两种注册方式:局部类型转换和全局类型转换。局部转换只针对特定Action的一个或多个属性,而全局转换则对所有Action中特定类型的属性生效。
制作局部类型转换器,首先要创建一个自定义转换类,可以继承`DefaultTypeConverter`并重写`convertValue`方法,或者继承`StrutsTypeConverter`并覆盖`convertFromString`和`convertToString`方法。然后,在与Action同目录下创建一个名为`Action类名-conversion.properties`的配置文件,文件内容指定属性名和对应的转换器类名。
全局类型转换器的创建过程类似,但其配置需要在全局配置文件中完成,这样转换器对所有Action的特定类型属性都有效。这允许开发者更灵活地处理复杂的数据转换需求,确保Struts2应用程序能够正确处理各种输入数据,提供更加健壮和安全的服务。
Struts2的类型转换和校验机制是其高级应用的重要组成部分,提供了强大的数据处理能力,既方便了开发,又保证了应用的稳定性和安全性。通过理解并熟练掌握这些机制,开发者可以更好地利用Struts2构建高效的企业级Web应用。
2009-09-04 上传
2015-12-26 上传
2011-09-09 上传
2019-05-31 上传
2019-08-05 上传
2019-03-20 上传
2019-03-05 上传
2022-09-19 上传
2012-02-22 上传
杜浩明
- 粉丝: 13
- 资源: 2万+
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍