繁体   English   中英

将会话变量数据从jsp传递到Java

[英]Passing session variable data from jsp to java

我创建了会话变量,因为我想将数据从一个JSP传输到另一个。 我的每个JSP都是一个选项卡。 我使用请求正文将用户提供的数据从一个JSP传输到另一个JSP。 在我提交数据并在Java类中使用它的最后一个JSP中,我有<form>..><button type = "submit"/> </form>

当我尝试从所有JSP页面访问会话数据时,它将为所有数据返回一个空值。

我应该如何将所有会话数据从所有JSP传输到Java类? 请注意,每个JSP都是一个选项卡,我从上一个JSP提交数据。

码:

<% 
    String joindate = request.getParameter( "joindate" );
    session.setAttribute("joindate",joindate);
    String birthdate = request.getParameter( "birthdate" );
    session.setAttribute("birthdate",birthdate);
%>

通常,只需避免使用scriptlet。 您绝对应该执行Makoto建议的操作:通过让JSP将其数据提交到servlet来使用MVC模式,这会减轻工作负担。

只要您在JSP中拥有表单,就可以考虑使用

<form action="servletpattern?action=add_date" method="post">

然后在servlet中:

 HttpSession session = request.getSession();
 String action = request.getParameter("action");
 if(action.equals("add_date")){
     String joindate = request.getParameter( "joindate" );
     session.setAttribute("joindate",joindate);
     String birthdate = request.getParameter( "birthdate" );
     session.setAttribute("birthdate",birthdate);
 } else if(action.equals("someotheraction"){
     //do something else
 }

在JSP中,您不应再次使用scriptlet,而应通过EL访问会话变量:

join date: ${joindate}, birth date: ${birthdate}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM