在转换器中将JSF日历日期转换为JodaTime

时间:2012-07-25 00:05:03

标签: jsf-2 converter

JodaTime可能是最好的日期和时间库,也许吧。

所以我很想从支持bean的JodaTime实例中的前端xhtml Calendar小部件接收用户输入。因此,我正在考虑使用JSF Converter来完成这项工作。

这是明智的吗?

同时,由于我使用的是Primefaces组件库并且我已经在我的支持bean上接收了一个Date对象,提供自定义转换器是否需要我重新执行此操作?即从String格式转换为Date对象,然后转换为JodaTime DateTime对象。我可以以某种方式让默认的JSF首先将它转换为Date吗?

1 个答案:

答案 0 :(得分:11)

在模型,视图和持久层中坚持java.util.Date(因为所有人都已经内置了对它的支持,你通常不需要在这些层上执行日期计算/操作)并使用JodaTime仅在您需要根据java.util.Date值执行计算/操作时才在业务层中。这将使很多事情变得简单。

使用Java 8后,将java.util.Date迁移到java.time.Local / ZonedDateTime。 JSF 2.3将在<f:convertDateTime>中提供额外的Java 8支持。在此之前,您需要按照此答案中的说明自行添加它们:How to use java.time.ZonedDateTime / LocalDateTime in p:calendar