JSF 标准转换器2024 年 8 月 29 日 | 阅读 2 分钟 JavaServer Faces提供了一组转换器。 您可以使用它来转换组件数据。 转换的目的是从Servlet API获取基于String的数据,并将其转换为强类型的Java对象。 javax.faces.convert包包含所有标准转换器。 转换器根据组件的值指向的EL表达式的类型隐式分配。 您也可以通过转换器ID访问这些转换器。 下表显示了转换器类及其关联的转换器ID。 JSF 转换器| Class | 转换器ID |
|---|
| BigDecimalConverter | javax.faces.BigDecimal | | BigIntegerConverter | javax.faces.BigInteger | | BooleanConverter | javax.faces.Boolean | | ByteConverter | javax.faces.Byte | | CharacterConverter | javax.faces.Character | | DateTimeConverter | javax.faces.Datetime | | DoubleConverter | javax.faces.Double | | EnumConverter | javax.faces.Enum | | FloatConverter | javax.faces.Float | | IntegerConverter | javax.faces.Integer | | LongConverter | javax.faces.Long | | NumberConverter | javax.faces.Number | | ShortConverter | javax.faces.Short |
每个转换器都关联一个标准错误消息。 如果你在页面上的任何组件上使用任何转换器,并且转换器无法转换组件的值,则转换器的错误消息将显示在页面上。 标准转换器DateTimeConverter和NumberConverter都有自己的标签,您可以使用标签属性配置组件数据的格式。 JSF数据转换核心标签| 标签 | 函数 |
|---|
| f:converter | 它用于向父组件添加任意转换器。 | | f:convertDateTime | 它用于向父组件添加DateTimeConverter实例。 | | f:convertNumber | 它用于向父组件添加NumberConverter实例。 |
JSF <f:converter> 标签示例// index.xhtml // User.java // response.xhtml 输出 // 首页  // 响应页面 
|