在JSP中,如何使用锚标记传递ArrayList?

时间:2011-03-29 16:57:45

标签: jsp object tags anchor

我是JSP的新手。 我所能做的就是从另一个网页的表格标签中接收数据。 我不知道任何MCV(MVC?),也不知道自定义标签,会话,cookie或任何比这更深的东西。

我只需要使用锚标记将ArrayList传递给另一个动态生成的JSP页面。 这是规范。

基本上我有一个二维ArrayList。 第一个维度被迭代并列在第一个JSP页面中。

所以第一个JSP页面如下所示:


这是ArrayList1。大小是23。

这是ArrayList2。大小是19。

这是ArrayList3。大小是12。

...

...

...

这是ArrayList(n)。大小为1。


每一行都是锚标记,当用户点击它时, 相应的ArrayList传递给第二个JSP页面。

第二个JSP页面,只需接收一个ArrayList,然后遍历它并列出其中的数据。 因此,只需要一个“第二个JSP页面”,因为它一次只能接收一个ArrayList。它只需要是动态的。

我知道如何遍历JSP页面中的ArrayList。 我不知道的是如何使用锚标记将ArrayLists传递给另一个JSP页面。

欢迎任何提示或方法。我做了一些自己的搜索,但所有评论对我来说都太高了。我很感激任何帮助。感谢。

2 个答案:

答案 0 :(得分:0)

  1. 你可能不想这样。
  2. 如果你真的想这样做,那么
  3. 它不是真正与JSP相关的问题,而是与HTTP相关的问题
  4. 您可以使用逗号加入数组中的内容,并将整个字符串作为查询字符串组件附加到网址中。
  5. 示例:

    在a.jsp中你有一个链接:

    b.jsp?array=1,2,3,4,5
    

    在b.jsp中你解释数组字符串并得到一个arraylist:

      

    [1,2,3,4,5]

答案 1 :(得分:0)

我认为你不应该这样做。相反,您可以采用以下方式。它更容易,更有可能。

思想:   - 将所有arraylist设置为

request.setAttribute("arraylist1",Arraylist1);
request.setAttribute("arraylist2",Arraylist2);
.....

- 在每个锚标记中,您放置一个ID以识别单击哪个链接

(e.g. <a href="b.jsp?id=arraylist1">your link </a>)  

- 在b.jsp中,获取这行代码

的id参数
String selectedLink = request.getParameter("id")
  • 比较selectedLink = arraylist1
  • 列出selectedArray =(列表)request.getAttribute(selectedLink);

希望这个有用

NathanPhan