JSF f:convertDateTime标记

本文概述

  • JSF < f:converterDateTime> 标记示例1
  • JSF < f:converterDateTime> 标记示例2
它用于将用户输入转换为指定的日期。你可以通过将convertDateTime标签嵌套在component标签内来将其数据转换为java.util.Date。 convertDateTime标记具有几个属性, 可用于指定数据的格式和类型。
标签属性
属性 类型 描述
binding DateTimeConverter 它用于将转换器绑定到托管bean属性。
dateStyle String 它用于定义日期或日期字符串的日期部分的格式(由java.text.DateFormat指定)。仅当类型是日期或两者兼有且未定义模式时才应用。有效值:默认, 短, 中, 长和满。如果未指定任何值, 则使用默认值。
for String 它用于引用此标签嵌套在其中的复合组件中的对象之一。
locale 字符串或语言环境 它是Locale的一个实例, 其日期和时间的预定义样式在格式化或解析期间使用。如果未指定, 将使用FacesContext.getLocale返回的语言环境。
pattern String 它用于自定义格式设置模式, 该模式确定如何格式化和解析日期/时间字符串。如果指定了此属性, 则忽略dateStyle, timeStyle和type属性。
timeStyle String 它用于定义时间或日期字符串的时间部分的格式(由java.text.DateFormat指定)。仅当类型为时间且未定义模式时才应用。有效值:默认, 短, 中, 长和满。如果未指定任何值, 则使用默认值。
timeZone 字符串或时区 它用于解释日期字符串中任何时间信息的时区。
type String 它用于指定字符串值将包含日期, 时间还是两者都包含。有效值为日期和/或时间。如果未指定任何值, 则使用日期。
JSF < f:converterDateTime> 标记示例1 // index.xhtml
< h:form> < h:outputLabel for="username"> User Name< /h:outputLabel> < h:inputText id="user-id" value="http://www.srcmini.com/#{user.name}"/> < br/> < h:outputLabel for="age"> Date of Birth< /h:outputLabel> < h:inputText id="dob-id" value="http://www.srcmini.com/#{user.dob}" converterMessage="Please provide date of birth in dd/mm/yyyy format"> < f:convertDateTime pattern="dd/mm/yyyy" /> < /h:inputText> < br/> < h:commandButton action="response.xhtml" value="http://www.srcmini.com/Submit"/> < /h:form>

// User.java
import java.util.Date; import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; @ManagedBean @RequestScoped public class User { String name; Date dob; public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getDob() { return dob; } public void setDob(Date dob) { this.dob = dob; } }

// response.xhtml
< h:body> < h1> Hello, < h:outputText value="http://www.srcmini.com/#{user.name}"/> < /h1> < h:outputLabel> Your date of birth is: < /h:outputLabel> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime pattern="dd/mm/yyyy"/> < /h:outputText> < /h:body>

输出:
//索引页
JSF f:convertDateTime标记

文章图片
//索引页
JSF f:convertDateTime标记

文章图片
//回应页面
JSF f:convertDateTime标记

文章图片
JSF < f:converterDateTime> 标记示例2 // index.xhtml
< h:form> < h:outputLabel for="username"> User Name< /h:outputLabel> < h:inputText id="user-id" value="http://www.srcmini.com/#{user.name}"/> < br/> < h:outputLabel for="age"> Date of Birth< /h:outputLabel> < h:inputText id="dob-id" value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime pattern="dd/MM/yyyy"/> < /h:inputText> < br/> < h:commandButton action="response.xhtml" value="http://www.srcmini.com/Submit"/> < /h:form>

// User.Java
import java.util.Date; import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; @ManagedBean @RequestScoped public class User { String name; Date dob; public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getDob() { return dob; } public void setDob(Date dob) { this.dob = dob; } }

// response.xhtml
< ?xml version='1.0' encoding='UTF-8' ?> < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> < html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:f="http://java.sun.com/jsf/core"> < h:head> < title> Response Page< /title> < /h:head> < h:body> < h1> Hello, < h:outputText value="http://www.srcmini.com/#{user.name}"/> < /h1> < h:outputLabel value="http://www.srcmini.com/Your date of birth in different-different formats is given below:"> < /h:outputLabel> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime type="date" dateStyle="medium"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime type="date" dateStyle="full"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime type="time" dateStyle="full"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime type="date" pattern="dd/mm/yyyy"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime dateStyle="full" pattern="yyyy-mm-dd"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime dateStyle="full" pattern="yyyy.MM.dd 'at' HH:mm:ss z"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime dateStyle="full" pattern="h:mm a"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime dateStyle="long" timeZone="EST" type="both"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime locale="de" timeStyle="long" type="both" dateStyle="full"/> < /h:outputText> < br/> < h:outputText value="http://www.srcmini.com/#{user.dob}"> < f:convertDateTime locale="en" timeStyle="short" type="both" dateStyle="full"/> < /h:outputText> < /h:body> < /html>

输出:
//索引页
JSF f:convertDateTime标记

文章图片
【JSF f:convertDateTime标记】//回应页面
JSF f:convertDateTime标记

文章图片

    推荐阅读