转换器部分:
<f:validateRequired/>或required="true"  :验证非空

<f:covertNumber>  :将字符串转为自定义的数字类型
属性:
    ①type:number数值(default), currency货币 , or percent百分数
   ②pattern:Formatting pattern, as defined in java.text.DecimalFormat
   ③maxFractionDigits:最大小数的位数
   ④minFractionDigits
   ⑤minIntegerDigits
   ⑥integerOnly(boolean):
   ⑦currencyCode:ISO 4217 currency code to use when converting currency values
   ⑧currencySymbol
例子:
JSF转换器&验证器的使用
输出结果:
JSF转换器&验证器的使用

f:convertDateTime   :将字符串转为指定格式的Date
属性:
    ①type:date (default), time, or both
    ②dateStyle:default, short, medium, long, or full
    ③timeStyle:同上
    ④pattern:Formatting pattern, as defined in java.text.SimpleDateFormat
      最常用,一般为<f:convertDateTime pattern="yyyy-mm-dd">
    ⑤locale:Locale whose preferences are to be used for parsing and formatting
    ⑥timeZone:转换的时区
将表单中填写的String转换成Date类型,装载到Bean中(过程:先转换、有验证器就验证、最后进入更新模型值阶段,将值注入Bean中)。

自定义转换器:
步骤:
    ①实现Converter接口
    ②实现该接口的两个方法:
     getAsObject()
JSF转换器&验证器的使用
     String value是从输入组件中获取到的值,在Converter注册后,getAsObject会在值传到后台时被调用,将String转为定制的Object类型。
     getAsString()
JSF转换器&验证器的使用
     在显示该Bean的值时会传入Bean的该属性(一个对象),调用该方法,计算出String后用于显示。
    ③注册:
        法1:@FacesConverter("id")
        法2:在faces-config.xml中注册
                  <converter>
                        <converter-id></>
                        <converter-class></>
                   </>
    ④使用:
        法1:converter属性="注册id"
        法2:<f:converter converterID="注册id">   标准验证器为全路径:javax.faces.Number
        法3:<f:convertNumber  minFractionDigits=""  .../>

验证器部分:
<f:validateLength  maximum="" minimum=""/>   验证长度
<f:validateLongRange  maximum="" minimum=""/>   验证值的区间
<f:validateDoubleRange  maximum="" minimum=""/>   验证值的区间
<f:validateRegex pattern=""/>   正则验证

自定义验证器:
    ①实现Validator接口
    ②实现validate方法:
JSF转换器&验证器的使用
    ③@FacesValidator注册或在faces-config.xml注册



相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-27
  • 2021-04-21
  • 2021-06-20
  • 2022-12-23
猜你喜欢
  • 2021-06-28
  • 2021-10-06
  • 2022-03-04
  • 2021-10-17
  • 2021-11-29
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案