- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
STRUTS2的类型转换和输入校验
2014.3
主要内容
Struts2的类型转换
Struts2的输入校验
STRUTS2的类型转换
Struts2的类型转换支持
基于OGNL的类型转换
自定义类型转换器
局部类型转换和全局类型转换
类型转换的错误处理
类型转换概述
HTTP请求参数都是字符串类型,MVC框架必须
将这些字符串参数转换成相应的数据类型——这
个工作是所有的MVC框架都应该提供的功能。
STRUTS2的类型转换
Struts2的类型转换可以基于OGNL表达式,只
要把HTTP参数命名为合法的OGNL表达式,就
可以充分利用Struts2的类型转换机制。
除此之外,Struts2提供了很好的扩展性,开发
者可以非常简单地开发出自己的类型转换器,
完成字符串和自定义复合类型之间的转化
如果类型转换中出现未知异常,类型转换器开
发者无需关心异常处理逻辑,Struts2的
conversionError拦截器会自动处理该异常,并
且在页面上生成提示信息。
Struts2的类型转换器提供了非常强大的表现层
数据处理机制,开发者可以利用Struts2的类型
转换机制来完成任意的类型转换。
内置的类型转换
boolean和Boolean:完成字符串和布尔值之间的转
换。
char和Character:完成字符串和字符之间的转换。
int和Integer:完成字符串和整型值之间的转换。
long和Long:完成字符串和长整型值之间的转换。
float和Float:完成字符串和单精度浮点值之间的转
换。
double和Double:完成字符串和双精度浮点值之间
的转换。
内置的类型转换
Date:完成字符串和日期类型之间的转换,日期格式
使用用户请求所在Locale的SHORT格式。
数组:在默认情况下,数组元素是字符串,如果用户
提供了自定义类型转换器,也可以是其他复合类型的
数组。
集合:在默认情况下,假定集合元素类型为String,
并创建一个新的ArrayList封装所有的字符串。
基于OGNL的转换
-该请求参数将自动作为Action的User属
性的name属性值。
user.pass-该请求参数将自动作为Action的User属
性的name属性值。
基于OGNL转换的注意点
因为Struts2将通过反射来创建一个复合类(User类)
的实例,因此系统必须为该复合类提供无参数的构造
器。
如果希望使用请求参数的形式为Action实
例的user属性的name属性赋值,则必须为user属性对
应的复合类(User类)提供setName()方法,因为
Struts2是通过调用该方法来为该属性赋值的。当然
Action类中还应该包含setUser()方法。
指定集合元素的类型
为了指定集合属性里元素的数据类型,需要指定2个
部分:
集合属性的名称。
集合里元素的类型。
通过在局部类型转换文件中指定如下key-value对即
可:
Element_PropName=ElementType
自定义类型转换器
实现TypeConverter接口,这个接口就是自定义类型
转换器必须实现的接口。
重写上面接口的convertValue(Mapcontext,Object
value,ClasstoType)方法。
CONVERTVALUE方法作用
CONVERTVALUE方法的参数
第一个参数:context是类型转换环境的上下文。
第二个参数:value是需要转换的参数。随着转换方
向的不同,value参数的值也是不一样的,当把字符
串类型向User类型转换时,value是原始字符串数组;
当需要把User类型向字符串类型转换时,value是
User实例。
第三个参数:toType是转换后的目标类型,这个参数
前面已经介绍了。
注册类型转换器
Struts2支持如下三种注册类型转换器的方式:
注册局部类型转换器:局部类型转换器仅仅对某个Action
您可能关注的文档
- 教育测量质量.pdf
- 顶升桥开工报告.pdf
- 新中国初期的外交-自己.pdf
- 数据结构第02章线性表B.pdf
- 第十一单元 实验活动8 粗盐中难溶性杂质的去除.pdf
- 浙江专版2025届高考物理一轮总复习小题增分特训14热学课件新人教版.pdf
- 第6章 健康保险2.pdf
- 爱孩子是本能(四下期末家长会).pdf
- 田鼠阿佛PPT(最新整理版).pdf
- 二、液体的压强(含动画和练习)五中.pdf
- DB3407_T 014-2023 市场监督管理所标准体系 构成和要求.docx
- DB3609_T 01-2024 燃油加油机计量监督检查规程.docx
- DB3406_T 010-2022 运输企业违法行为智能取证技术规范.docx
- DB36_T 1611-2022 红色旅游服务示范景区评定规范.docx
- DB36_T 1413.1-2021 中小学研学旅行 第1部分:基地(营地)认定规范.docx
- DB36_T 1412-2021 游乐园(场)大型游乐设施服务规范.docx
- 《GB/T 37133-2025电动汽车用高压连接系统》.pdf
- GB/T 37133-2025电动汽车用高压连接系统.pdf
- 中国国家标准 GB/T 37133-2025电动汽车用高压连接系统.pdf
- DB3403_T 04-2020 胶轮有轨电车交通系统施工及验收规范.docx
最近下载
- 信阳太阳能光伏电站项目投资计划书.docx VIP
- 第19课《十里长街送总理》课件-2024-2025学年统编版语文(五四学制)六年级上册.pptx VIP
- 中图版八年级下欧洲西部.pptx
- 湖南株洲轨道交通装备制造业竞争力分析.pdf VIP
- 2018省考万人模考第六季11.18(答案+解析).pdf
- 7.4欧洲西部课件-七年级地理下学期湘教版.pptx VIP
- 在XX深入贯彻中央八项规定精神学习教育专题学习交流研讨发言范文.docx VIP
- SH_T 3046-2024《石油化工立式圆筒形钢制焊接储罐设计规范》.pdf
- 三年级下册语文教案 表格式教学设计11.赵州桥含设计意图(人教部编版).docx
- 欧洲西部经济、旅游课件七年级地理下学期湘教版.pptx
文档评论(0)