FreeMarker使用Java新版日期API
0
FreeMarker
使用新版Java的事件API不能正确的格式化输出,需要添加下面配置才可以。
this.configuration.setObjectWrapper(new DefaultObjectWrapper(freemarker.template.Configuration.VERSION_2_3_31) {
@Override
public TemplateModel wrap(Object object) throws TemplateModelException {
if(object instanceof LocalDateTime localDateTime) {
return new SimpleDate(Timestamp.valueOf(localDateTime));
} else if(object instanceof LocalDate localDate) {
return new SimpleDate(Date.valueOf(localDate));
}else if(object instanceof LocalTime localTime) {
return new SimpleDate(Time.valueOf(localTime));
}
return super.wrap(object);
}
});
也可以使用freemarker-java8
依赖解决。