【问题标题】:Is it possible to pass an arraylist from one JSP page to another without using session是否可以在不使用会话的情况下将数组列表从一个 JSP 页面传递到另一个页面
【发布时间】:2013-11-04 15:49:36
【问题描述】:

我正在尝试将ArrayList 从 JSP 页面传递到另一个 JSP 页面。 是否可以不使用会话? 请回复...

one.jsp:

<%
     testActions reqact = new testActions(Con);
    reqact.getAllRecordsforAll();//Getting data from DB and stores it on an Arraylist contains test object array
    ArrayList<test> list1 = new ArrayList<test>();
    list1=reqact.ListOfObjects//assigning the resulting list to list1
%>

在来自one.jsp 的按钮单击事件上,我想加载two.jsp 并希望访问two.jsp 中的相同列表(list1)。

我想避免使用 session 那么还有其他方法吗?

【问题讨论】:

  • 当然,有可能。向我们展示您的代码,我们或许可以提供帮助。
  • @Tap 我添加了一个示例代码。请通过它。
  • 您也许可以使用 Javascript 来保留 jsp 页面之间的上下文。您还可以使用查询字符串或隐藏的表单字段。问:会话有什么问题?您有什么要求阻止“以正确的方式做事”?
  • 看起来您已经将列表保存到数据库中。为什么不在 two.jsp 上做与 one.jsp 上相同的事情呢?如果列表没有变化,并且查询不是超级昂贵,我认为这是最简单的解决方案。您将处理不同的 java 对象,但数据相同。
  • @tap 我不知道如何解释我想要的实际东西以及我为什么需要它。把我的整个代码放在这里解释这件事太混乱了。我放在这里的只是我的代码模型......而不是全部。无论如何感谢您的关心。我其实在期待一个答案

标签: jsp session arraylist


【解决方案1】:

解决方案取决于“从一个 JSP 传递到另一个”是什么意思。

您是否将一个 JSP 包含到另一个 JSP 中?您可以在&lt;jsp:include&gt; 中设置参数。 您是从一个 JSP 转发到另一个 &lt;jsp:forward&gt; 吗?您也可以使用参数 :-) 另一种选择是使用 JSTL 的 &lt;c:set&gt; 标记将列表存储到请求或页面范围内。

【讨论】:

    【解决方案2】:

    您需要在某个范围(会话或请求)内携带数据。

    检查此问题以获取your answer

    【讨论】:

    • 我想要一个避免使用会话的解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-08
    • 1970-01-01
    • 2019-01-14
    • 1970-01-01
    • 1970-01-01
    • 2017-03-02
    相关资源
    最近更新 更多