我在标准HTML页面(而非JSP)上使用带有Thymeleaf的Java Web应用程序中的Spring。我在几个页面上有多个文本输入的表单。我想在文本输入上引用maxlength的一些变量。例如:
电流:
<input id='name' type='text' maxlength='20' />
目标:
<input id='name' type='text' maxlength='${nameMaxlength}' />
我更愿意将这些文件放在我的Java代码可以访问的文件中,以便客户端和服务器端验证可以引用相同的值。是否有针对此类功能的最佳实践?
答案 0 :(得分:2)
如果您使用Thymeleaf和Spring方言,您可以执行以下操作:
package somepackage;
public final class WebConsts {
public static final int MAX_LENGTH = 20;
private WebConsts(){}
}
<input id="name" type="text" th:maxlength="${T(somepackage.WebConsts).MAX_LENGTH}" />
maxlength中的表达式是标准的Spring EL表达式
答案 1 :(得分:0)
在Fuwesta中,我使用了很多技巧来减少这种重复信息。我的标准方法是将信息放入MessageSource
。它非常简单,您可以通过#{constant.nameMaxLength}
轻松访问。
另一种方法是将这些信息始终放入模型中。