JavaWebPPTCH08 程序设计与项目实践.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JavaWebPPTCH08 程序设计与项目实践

Java Web 程序设计与项目实践 第八章 Struts 2类型转换和输入校验 类型转换和输出校验是Struts 2的一个非常重要的部分。通过类型转换能够将表单参数转换成Java类中各种类型,而通过输入校验能够对表单参数进行合法性判断,从而过滤掉“不良”数据。本章将详细介绍Struts 2的内建类型转换器和自定义类型转换器。还将介绍如何手动添加校验代码来完成校验和通过校验框架来完成校验。 重点内容: Struts 2内建类型转换器 自定义类型转换器Re 手动添加校验代码来完成校验 通过校验框架完成输入校验 一、Struts 2类型转换基础 1.类型转换的意义 Web应用程序的交互都是建立在HTTP之上的,互相传递的都是字符串。也就是说服务器接收到的来自用户的数据只能是字符串或者是字符数组,而在Web应用的对象中,往往使用了多种不同的类型,如整数(int)、浮点数(float)、日期(Date)或者是自定义数据类型等。因此在服务器端必须将字符串转换成合适的数据类型,服务器端完成处理后,又需要将其他数据类型转换为String,然后传递给客户端进行显示,具体流程如图所示。 一、Struts 2类型转换基础 2.内建类型转换器简介 Struts 2为常用的数据类型提供了内建的类型转换器,所以根本不用自定义转换器。对于内建的转换器,Struts在遇到这些类型时,会自动去调用相应的转换器进行类型转换。下面来看Struts 2提供了哪些内建的类型转换器,具体如下。 ? 1、基本数据类型以及其封装类。 ? 2、日期类型。 ? 3、集合(Collection)类型。。 ? 4、集合(Set)类型。 ? 5、数组类型。 一、Struts 2类型转换基础 3.基本数据类型转换器 通过基本数据类型转换器能够完成字符串和基础数据类型之间的转换,其中基础数据类型包括boolean、char、byte、short、int、long、float和double八种。 一、Struts 2类型转换基础 4.基本数据类型的封装类转换器 Struts 2的内置转换器不但能转换基本数据类型,还能够转换基本数据类型的封装类,包括Boolean、Character、Byte、Short、Integer、Long、Float和Double八种。 一、Struts 2类型转换基础 5.数组类型转换器 Struts 2还提供了一个数组类型的转换器,这个转换器非常常用,比如多个表单元素的name属性相同,那么提交的参数就不再是字符串而是一个字符串数组。通过Sturts 2提供的数组类型的转换器就能很方便的将多个相同name属性的表单元素的值封装到Action中的一个数组中。 一、Struts 2类型转换基础 6.集合类型转换器 上面介绍的是通过数组来接受参数值,同样也可以通过集合类型来接受参数值。Struts 2提供的集合类型转换器,会将参数值自动添加到集合类型属性中。 一、Struts 2类型转换基础 7.日期类型转换器 通过日期类型转换器能够自动完成字符串类型与日期类型之间的转换。不过字符串类型必须符合日期格式规范,否则将类型转换错误。 二、自定义类型转换器 1.实现自定义类型转换器 前面介绍的都是Sturts 2内建的类型转换器,下面来看如何创建自定义的类型转换器。假如现在有一个自定义的类Point类,包括x和y两个属性,分别代表x坐标值和y坐标值。那么如果通过表单的参数值来设置Point类的属性呢,这时就必须通过自定义类型转换器来完成。 Struts 2的类型转换器是基于OGNL实现的。首先在导入的ognl-2.6.11.jar类库中找到TypeConverter类,代码如下所示。 public interface TypeConverter { public Object convertValue(Map context, Object target, Member member, String propertyName, Object value, Class toType); } 二、自定义类型转换器 2.使用Struts 2提供的StrutsTypeConverter 前面介绍了TypeConverter接口以及实现TypeConverter接口的DefaultTypeConverter类。但是我们发现通过继承DefaultTypeConverter类来实现自定义类型转换器比较麻烦。 其实Struts 2提供了一个StrutsTypeConverter的抽象类,开发时可以通过继承这个类来构建类型转换器。这样可以不用对转换的类型进行判断,从而节省大量的代码和开发时间。 二、自定义类型转换器 3.注册局部类型转换器 局

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档