Sve*_*ven 4 jsf timestamp converter jsf-2
我想将输入转换为时间戳值.
我在例子中只找到了一个日期转换器.有没有最佳做法?
谢谢
更新:
我想保存用户的生日,但我的后端需要时间戳值.我将它绑定到我的jsf前端有问题..
也许一个例子的链接会很有帮助:-)
我尝试了如下:
public void setBday(Date bday) {
member.setBirthday(new Timestamp(bday.getTime()));
}
public Timestamp getBday() {
return member.getBirthday();
}
Run Code Online (Sandbox Code Playgroud)
但我得到例外(奇怪):
/createMember.xhtml @34,54 value="#{member.bday}": Cannot convert 13.01.83 01:00 of type class java.util.Date to class java.sql.Timestamp
Run Code Online (Sandbox Code Playgroud)
(这可能是因为get方法吗?)
绑定到Date#getTime()
以毫秒为单位获取/设置原始时间戳.
<h:inputText value="#{bean.date.time}" />
Run Code Online (Sandbox Code Playgroud)
或者,如果您想输入/输出人类可读日期,那么只需坚持使用#{bean.date}
并使用标准日期转换器.
<h:inputText value="#{bean.date}">
<f:convertDateTime type="date" dateType="short" />
</h:inputText>
Run Code Online (Sandbox Code Playgroud)
在后端只是Date#getTime()
用来处理时间戳.
更新:您不应该使用特定于JDBC的API来混淆模型.该java.util.Date
代表时间戳.java.sql.Timestamp
仅在此时使用,您将要java.util.Date
在数据库的一个TIMESTAMP
或一DATETIME
列中保留.
preparedStatement.setTimestamp(index, new Timestamp(bean.getDate().getTime()));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10879 次 |
最近记录: |