我正在将旧的 Struts 1.x 应用程序转换为 Spring MVC,并且在某些 JSP 页面中,
bean:define
标记用于从资源包中获取字符串,然后在页面中稍后使用:
<bean:define id="example_title"><fmt:message bundle="${example_Labels}" key="example_field"/></bean:define>
然后:
title="<%=example_title%>"
我不确定等效的 JSTL(或者如果它甚至应该是 JSTL)标签应该是什么,以便消除 Struts 标签,任何人都可以提供建议吗? 我尝试过使用 JSTL
set
和 jsp:useBean
,但要么它们是错误的方法,要么是我实施不当。
感谢您的建议!
使用
var
的 fmt:message
属性。
<fmt:message bundle="${example_Labels}" key="example_field" var="example_title" />
这基本上将与键关联的值导出到名为
example_title
的页面范围变量中。您可以稍后在页面中以通常的 EL 方式打印它:
title="${example_title}"
或者,如果您仍然使用 JSP-2.0 之前的版本,其中不支持模板文本中的 EL(考虑升级..),则使用
<c:out>
显示它:
title="<c:out value="${example_title}" />"
您可以使用 ${} 表示法访问您定义的 bean
<%
title = ${example_title}
%>
如果您想打印它,您可以使用
<c:out>
标签
<c:out value=${example_title}/>
这里关于 JSTL 的快速链接