【问题标题】:Sending data from servlet to jsp? [duplicate]将数据从servlet发送到jsp? [复制]
【发布时间】:2019-01-07 12:50:48
【问题描述】:

我在 jsp 中有一个表单,我通过 doPost 方法从中检索数据到 servlet,假设用户名和密码现在在同一个表单中有一个空的 textarea 字段,我想从 servlet 发送用户名,我该怎么做做吗?

【问题讨论】:

  • 您要创建登录吗?
  • 请贴出您的代码,以便其他人找到解决方案。

标签: java jsp servlets


【解决方案1】:

像这样编写你的 Servlet 类

public class ServletToJSP extends HttpServlet {
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //communicating a simple String message.
        String message = "Example source code of Servlet to JSP communication.";
        request.setAttribute("message", message);

        //Servlet JSP communication
        RequestDispatcher reqDispatcher = getServletConfig().getServletContext().getRequestDispatcher("jsp url");
        reqDispatcher.forward(request,response);
    }
}

jsp页面

<%
    String message = (String) request.getAttribute("message");
    out.println("Servlet communicated message to JSP "+ message);
%>

【讨论】:

    【解决方案2】:

    我不太了解你的情况。但是有两种常见的方法可以将数据从 servlet 发送到 JSP:

    请求属性:如果数据沿着同一个请求传输,您可以使用此属性。

    request.setAttribute("username",obj);
    request.getRequestDispatcher("url").forward(request,response);
    

    在 JSP 中:

    <div>${username}</div>
    

    会话属性:在会话期间使用它来保留数据

    Session session = request.getSession(true); //true: create session if not existed
    session.setAttribute("username",obj);
    response.sendRedirect("url"); //or use request dispatcher to forward the request
    

    在 JSP 中:

    <div>${username}</div>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-13
      • 2013-05-27
      • 2014-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多