快速业务通道

在Visual Web JSF应用程序中转换和验证数据 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16
确保输入字段具有某种类型的值。

双精度范围验证器测试数值输入的值是否在指定的范围内。数据类型必须是浮点类型或可转换为浮点的类型。其它验证器包括长度验证器和长型范围验证器。

使用长度验证器来验证为某个组件输入的文本长度不短于或不长于您为验证器的“minimum”和“maximum”属性指定的值。该值必须是一个 java.lang.String。

使用长型范围验证器来验证用户输入的值落入了一个最小和最大值的范围内。该值必须是任何可转换为 Java long 数据类型的字符串值。

在Visual Web JSF应用程序中转换和验证数据 - 编程入门网

图 2:“组件面板”中的验证器

当您使用验证器(或在下面的使用转换器中描述的转换器)时,您也许还想使用一个消息组件来指明验证失败。Web 应用程序在调用任何值更改或动作侦听器(如按钮动作方法)前进行所有的验证。如果发生一个或多个验证错误,值更改侦听器和动作侦听器将不会被调用,而且 Web 应用程序重新渲染页面以便让用户能改正问题。

对于本应用程序,您想检查文本字段组件在页面提交前包含至少一个字符。您还需要一个消息组件来指明验证失败。

您在前一节中添加的“消息”组件将在验证失败时向用户指明。

展开“组件面板”的“验证器”类别。从“组件面板”拖放一个“双精度范围验证器”到文本字段组件上。

双精度范围验证器是不可见组件。 将在“导航”窗口中出现缺省值“doubleRangeValidator1”,以及“属性”窗口中的“validator”属性,如下图所示。

在Visual Web JSF应用程序中转换和验证数据 - 编程入门网

在Visual Web JSF应用程序中转换和验证数据 - 编程入门网

图 3:“导航”窗口和“属性”窗口

在Visual Web JSF应用程序中转换和验证数据(3)

时间:2011-07-06 netbeans2.org

在“导航”窗口中,选中“doubleRangeValidator1”。

在“属性”窗口中为验证器设置范围:

将“maximum”属性设为“1000.0”(非常热的温度)。

将“minimum”属性设为“-273.15”(例如摄氏温标上的绝对零度)。

在本节中,您使应用程序能够用双精度范围验证器来验证用户输入值。在下一节中,您将使用一个转换器来使应用程序能够计算一个摄氏温度数值字符串输入的华氏值。

使用转换器

IDE 还提供了一系列转换器,您可用来转换组件数据。转换器在您的组件属性中的 java.lang.String 值和 Java 数据类型之间转换数据类型。标准转换器可从“组件面板”中的“转换器”类别得到。当您绑定一个组件时,IDE 通常会为您使别数据类型,并在您建立值属性绑定时设置适当的转换器。但是,您也能从 IDE 中手动添加转换器,方法是设置组件的转换器属性。

注意:转换在验证过程开始前进行。如果应用程序无法将用户提供的值转换为指定的数据类型,Web 应用程序就会拒绝输入并发送错误消息。这个错误消息出现在“消息组”组件中,或在页面上现有的相关联的“消息”组件中。数值转换器是很有用的转换器,因为您可以用它来指定输入必须匹配的样式。

其它转换器组件包括(但不限于)以下这些:

Big Decimal 转换器在 java.lang.String 值和 java.math.BigDecimal 数据类型之间转换,例如将 JSF 组件绑定到 Oracle 数据库中 NUMBER 类型的列。

布尔转换器组件在 java.lang.String 值和 java.lang.Boolean 数据类型或 Java boolean 原始类型之一之间转换,例如将 JSF 组件绑定到数据库中 BOOLEAN 类型的列。

字节转换器组件在 java.lang.String 值和 java.lang.Byte 数据类型或 Java byte 原始类型之一之间转换,例如将 JSF 组件绑定到数据库中 SMALLINT 或 TINYINT 类型的列。

日历转换器组件在 java.lang.Stri

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号