如何将jsp页面中变量的值检索到另一个页面

时间:2011-04-26 11:51:02

标签: jsp servlets

我在一个jsp页面中声明了一个变量。这个变量是一个数组。 如何在下一个jsp页面中检索此数组。 代码很可能是:

<% 
    String[] a=new String[10];
    int i=0;
    while(resultSet.next())//here I'd retrieved the values from the Database
    {
        a[i]=resultSet.getString(1);
        i++;
    }
%>

现在我必须在下一页检索这个数组。

3 个答案:

答案 0 :(得分:0)

将它放在会话中,该会话是Web应用程序的所有页面和servlet之间共享的对象:

session.setAttribute("myarray", a);

并使用以下方法检索它:

String[] bubi = (String[]) session.getAttribute("myarray");

而不是

  

下一页

你的意思是那个页面将包含在当前页面的某些行之后,你也可以使用请求属性(不是参数!),设置:

request.setAttribute("myarray", a);

得到:

String[] bubi = (String[]) request.getAttribute("myarray");

答案 1 :(得分:0)

每个jsp文件都为自己而存在。您有两种选择: - 您使用的对象类可以将其存储在当前会话中 - 使用rqeuest.setAttribute("myArgumentName", myArrayObject);

将数组存储在请求的头部

答案 2 :(得分:0)

  • 将其存储在会话中
  • 在隐藏字段中输出,逗号分隔,提交,并在下一页重新创建数组

我更喜欢第二种方法。

但是尽量避免在jsp页面中使用java代码。 See here how and why