跨Java Web Application在HTML页面上引用变量

时间:2014-04-11 21:36:44

标签: java html spring thymeleaf

我在标准HTML页面(而非JSP)上使用带有Thymeleaf的Java Web应用程序中的Spring。我在几个页面上有多个文本输入的表单。我想在文本输入上引用maxlength的一些变量。例如:

电流:

<input id='name' type='text' maxlength='20' />

目标:

<input id='name' type='text' maxlength='${nameMaxlength}' />

我更愿意将这些文件放在我的Java代码可以访问的文件中,以便客户端和服务器端验证可以引用相同的值。是否有针对此类功能的最佳实践?

2 个答案:

答案 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}轻松访问。 另一种方法是将这些信息始终放入模型中。