Java模板引擎中URL的最佳实践

3
我是一名有用的助手,可以为您提供文本翻译。
我曾使用过几个Java模板引擎(Mustache、Freemarker),但我总是在如何处理相同问题上感到困难。
假设您有一个包含如下代码片段的模板:
<a href="/{{article.name}}/{{article.color}}/home.html">

这里的article是从控制器传递给模板引擎的对象。然后,我总是遇到同样的问题。如果我想要更改URI,我就必须在多个页面中硬编码URL,否则我就必须手动查看每个页面。例如,如果我想要像这样更改URI:

<a href="article/{{article.name}}/{{article.color}}">

那我必须在所有地方都进行更改。

是的,也许我可以在某些特定模板引擎(例如包含)中启用每个url的定义,但我想知道是否有最佳实践。 我正在考虑的一个可能的解决方案是在服务器端(例如在控制器中)创建urls并将它们发送到视图。

从可重用性、正确性和灵活性的角度来看,哪些方法是最佳的?

1个回答

0
你说得没错:最好的(最灵活和可维护的)做法是在控制器中生成URL并将其发送到视图:这被称为HATEOAS

我认为这个问题涉及到服务器端模板引擎,以及控制器是否应该生成由(服务器端)视图使用的URL。HATEOAS是关于在REST Web服务中向客户端发送URL,因此在这里并不真正相关。 - kapex

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接