访问scriptlet中的Java Map

时间:2013-05-09 13:59:35

标签: javascript java dictionary scriptlet

我已经将Java Map对象导入到我正在使用的JSP文件中。我需要做的是获取该映射的每个条目并将其放入JSP中的表中。我不会表现得像我对scriptlets非常了解,但是我可以告诉他们在运行之前对它们进行了全部评估,然后放入代码中,这使得访问单个条目成为一项挑战。我目前通过在地图上执行toString然后使用正则表达式来解析信息来实现它,但我想更安全地完成它。

如何实现这一目标?

2 个答案:

答案 0 :(得分:1)

您在运行前评估scriptlet的假设是错误的。 Scriptlet就像这个例子一样:

<p> Hello world </p>
<% 
while (something) {
    doSomeStuff();
}
%>
<p> Bye </p>

编译成这样的东西:

stream.write("<p> Hello world </p>");
while (something) {
    doSomeStuff();
}
stream.write("<p> Bye </p>");

本质上,不在scriptlet中的所有内容都放入stream.write,而所有内容 - 都插入而没有任何更改。在大多数具有JSP支持的应用程序服务器中,您甚至可以找到那些预编译的JSP servlet并查看生成的代码。而且,这种方法使它非常快。

所以编写scriptlet对你来说没问题。

答案 1 :(得分:0)

我假设您的地图属于Map<Integer,String>()类型;

<ul>
<%
for(Integer key : yourmap.keySet()) {
    String value = data.get(key);
    System.out.printf("%s = %s%n", key, value);

    %>
    <li><%= value%></li>
    <%
}
%>
</ul>