JSF 中的日期输出格式
如果 #{myBean.birthdate}
是 java.util.Calendar
或 java.util.Date
类型,我可以在EL 本身可能使用现有函数,其输出类似于 DateFormat
的 SHORT
、MEDIUM
、LONG 生成的输出
abd FULL
输出类型?
我不输出 #{myBean.birthdate}
的完整表单:Wed Jan 19 19:01:42 WIT 2011,我只是更喜欢简单的输出 2011 年 1 月 19 日。
我应该使用 #{formatBean.format(myBean.birthdate)}
代替吗?
If #{myBean.birthdate}
is of java.util.Calendar
or java.util.Date
type, can I possibly format this inside the EL itself using an existing function perhaps, with the output of like the one produced by the DateFormat
's SHORT
, MEDIUM
,LONG
abd FULL
output type?
Instead of outputting the complete form for the #{myBean.birthdate}
: Wed Jan 19 19:01:42 WIT 2011, I just prefer a simple output of Jan 19, 2011.
Should I use #{formatBean.format(myBean.birthdate)}
instead?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用
。您可以将其嵌套在任何输入和输出组件中。模式规则与java.text.SimpleDateFormat 相同
。Use
<f:convertDateTime>
. You can nest this in any input and output component. Pattern rules are same asjava.text.SimpleDateFormat
.如果您使用 OmniFaces,您还可以使用它的 EL 函数,例如
of:formatDate()
用于格式化Date
对象。您可以这样使用它:这样您不仅可以将它用于输出,还可以将其传递给其他 JSF 组件。
If you use OmniFaces you can also use it's EL functions like
of:formatDate()
to formatDate
objects. You would use it like this:This way you can not only use it for output but also to pass it on to other JSF components.
使用 EL 2(表达式语言 2),您可以使用这种类型的构造来解决您的问题:
或者您可以在 bean 中添加备用 getter,从而使
getBirthdateString 返回正确的文本表示形式。如果 get 方法是实体,请记住将其注释为 @Transient。
With EL 2 (Expression Language 2) you can use this type of construct for your question:
Or you can add an alternate getter in your bean resulting in
where getBirthdateString returns the proper text representation. Remember to annotate the get method as @Transient if it is an Entity.