转换器部分:
<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
例子:
输出结果:
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()
String value是从输入组件中获取到的值,在Converter注册后,getAsObject会在值传到后台时被调用,将String转为定制的Object类型。
getAsString()
在显示该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方法:
③@FacesValidator注册或在faces-config.xml注册