我遇到过一些Java属性文件,其中包含属性'名称后缀为整数值,表示如下所示的顺序:
ui.js.include.0 = /file1.js
ui.js.include.1 = /file2.js
然后JSP页面将使用如下标记读取这些属性:
<c:forEach var="jsInclude" items"${ui.js.include}">
// some codes to proceed the jsInclude variable
</c:forEach>
有谁能告诉我这种技术来自哪里?关于它的任何官方文件?
答案 0 :(得分:1)
此技术来自Spring framework及其PropertyPlaceholderConfigurer
。
在Spring应用程序中非常常见,使用Properties
bean。您可以通过这种方式从视图中访问它(假设您使用的是InternalResourceViewResolver
):
<bean id="properties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list><value>classpath:config.properties</value></list>
</property>
</bean>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"/>
<property name="suffix" value=".jsp"/>
<property name="exposedContextBeanNames">
<list><value>properties</value></list>
</property>
</bean>
然后,在JSP中,您可以使用${properties.myProperty}
或${properties['my.property']}
:
答案 1 :(得分:0)
属性扩展了Hashtable(反过来,实现了Map),所以就像用条目迭代HashMap一样。