Java Web应用程序属性

郭志伟:

Java和/或Spring是否具有属性的概念?我有一堆领域模型,每个领域模型都有几个属性。例:

public class Person {
    private String name;
    private Date dateOfBirth;
    private float height;
    private float weight;
    // getters and setters not shown
}

当显示一个人时,属性名称在JSP中被硬编码。

Name: ${person.name}<br>
Date of birth: ${person.dateOfBirth}<br>
Height: ${person.height}<br>
Weight: ${person.weight}<br>

此外,可能会有几个不同的页面显示一个人。请注意,出生日期是java.util.Date,因此JSP或控制器将对其java.text.SimpleDateFormat进行格式化。身高和体重是数字,它们可能有自己java.util.Format的格式。

我正在寻找一种属性查找机制。每个属性(名称,出生日期,身高等)将具有显示名称,格式和描述(用于帮助或工具提示)。这些属性的属性将在某个地方的配置文件中定义。显示属性时,将通过属性机制查找显示名称和格式。这也将解决本地化问题。

我的问题是是否已经为Java实现了这样的功能。

马特b:

如果我理解正确,则希望将其中某些属性的格式和描述放入外部文件中。您可能想看一下Spring的MessageSource在此处链接到javadoc),它有些回绕并且类似于ResourceBundleJDK中类。

使用MessageSource可以将格式和任何文本放置在外部文件中(并且具有用于不同语言的不同属性文件),但是我相信您仍然需要在JSP中包含哪些属性作为参数传递,例如:

<spring:message code="user.dob" arguments="${user.dateOfBirth}"/>

您的messages.properties文件包含以下内容:

user.dob = Your date of birth is {0}

我不确定如何在中指定格式messages.properties,但我知道这是可能的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章