当前位置: 首页 > 知识库问答 >
问题:

百里香叶-格式化时检查空值的最佳实践(即日期)

松灿
2023-03-14

我有一个百里叶模板代码来格式化日期。有时,该日期在返回的对象中将为 null。在这种情况下,检查百里叶中的空值的最佳方法是什么?当前模板引发以下错误:

Caused by: java.lang.IllegalArgumentException: Cannot apply format on null
    at org.thymeleaf.util.Validate.notNull(Validate.java:37)
    at org.thymeleaf.util.DateUtils.format(DateUtils.java:182)
    at org.thymeleaf.expression.Dates.format(Dates.java:164)

共有2个答案

沈栋
2023-03-14

您可以使用百里香仿制品对象实用程序类对象,也可以在将对象传递到模板之前对其进行验证。

我更喜欢预验证,因为你通常不想在你的模板中四处走动。也这样你就可以保持你的数据与视图松散耦合。

史高阳
2023-03-14

您还可以对对象使用条件表达式,以便仅当对象不为空时才应用格式化方法:th:text=“${myDate} ? ${#dates.format(myDate,...)}”

请注意,上面的表达式中没有“else”部分,在这种情况下,表达式将只返回 null(使 th:text 属性不写入任何内容)。

(StackOverflow要求免责声明:我是百里香叶的作者)

 类似资料:
  • 我用百里香模板发送电子邮件。我有一个模板,比如: 如果为空或,我不想发送电子邮件。我可以设置任何Thymeleaf属性来生成错误并且不会发送邮件吗?因为在没有值的电子邮件中发送“My name is”没有任何意义。 我从Thymeleaf上下文中获取所有值,变量可能是不同类型的,例如、等。我也尝试了以下方法,但它并没有解决我的问题,因为对象总是可用的:

  • 我正在设置 thymeleaf anchr 标签 href,如下所示以使用查询参数, 以上工作正常。但有时,我得到q1 url参数将为空。在这种情况下,我需要设置默认值。 我试过, 但是我在这个页面上遇到错误。对此有什么建议吗?

  • 我刚Java /Spring/Thymeleaf,所以请接受我目前的理解水平。我确实复习了这个类似的问题,但没能解决我的问题。 我试图得到一个简化的日期,而不是长日期格式。 ​ html格式: 电流输出

  • 我不明白,如果html模板与我在ModelAndView中获得的属性链接,如何将RESTFull服务的@Controller更改为@RestController 在胸腺叶模板中 但我想进入索引页面,在后台获取用户名 我可以使用ajax来更新标记“p”,但这样使用thymeleaf并没有什么好处,我可以使用jsp。那么,在Rest时使用thymeleaf的最佳方式是什么?它是否合理?

  • 我是Springboot的初学者,所以决定在购物车上工作。似乎找不到org.springframework.expression.spel.SpelEvalue ationException: EL1007E的根:在null上找不到属性或字段'name'。嵌套异常是org.thymeleaf.exceptions.TemplateProcessingException: Exception评估Sp

  • 使用SpringMVC+Thymeleaf,如何将基于整数的模型属性绑定到使用th:value或th:field的表单中的输入字段,而字段本身不显示值“0”。