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实现了这样的功能。
如果我理解正确,则希望将其中某些属性的格式和描述放入外部文件中。您可能想看一下Spring的MessageSource
(在此处链接到javadoc),它有些回绕并且类似于ResourceBundle
JDK中的类。
使用MessageSource
可以将格式和任何文本放置在外部文件中(并且具有用于不同语言的不同属性文件),但是我相信您仍然需要在JSP中包含哪些属性作为参数传递,例如:
<spring:message code="user.dob" arguments="${user.dateOfBirth}"/>
您的messages.properties
文件包含以下内容:
user.dob = Your date of birth is {0}
我不确定如何在中指定格式messages.properties
,但我知道这是可能的。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句