java - 将变量从 Servlet 发送到 JSP

标签 java jsp servlets

我有一个关于 servlet 和 jsp 的问题。

小服务程序:

public class Servlet extends javax.servlet.http.HttpServlet {

    protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
        Integer i = new Integer(15);
        request.setAttribute("var", i);
        RequestDispatcher Dispatcher = getServletContext().getRequestDispatcher("/index.jsp");
        Dispatcher.forward(request, response);
    }

JSP 页面:

<html>
  <head>
    <title></title>
  </head>
  <body>
        <form id="id" method="get" action="servlet">
            <%= (request.getAttribute("var")) %>
        </form>
  </body>
</html>

因此,我希望看到 15,但我看到的是空值。为什么会这样?

最佳答案

请求参数从 View 发送到 Controller ,请求属性用于在当前请求中传递数据以帮助构建新的响应。所以,你should not use scriplets并使用 Expression Language 访问请求属性:

<body>
    <!-- No need to use a form for this page -->
    The request attribute: ${var}
</body>

请注意,根据您当前的请求,您应该对您的 servlet 执行 GET 请求。由于您的 servlet 名称是 servlet(我建议您立即更改它),您应该访问此 URL:http://yourServerName/yourApplicationName/servlet

关于java - 将变量从 Servlet 发送到 JSP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21992539/

相关文章:

java - 分析多个输入文件并只输出一个包含一个最终结果的文件

java - 将 Tomcat Basic Auth 与新的 WebApplicationInitializer 结合使用

java - 关于消息发布的可分发客户端的建议

jsp - 如何在 scriptlet 中访问自定义标签的属性?

java - 在用户上传之前,我如何比较数据库中的相似图像? ( java )

java - 无法使用 jSTL 将对象数组列表从 servlet 发送或传递到 jsp

java - 如何从 ldap DirContextOperations 获取 memberOf 属性

javascript - 阿拉伯字符在 javascript 中显示为问号

java - 不同的行为取决于数据库中的异常

汤姆猫 6 : can welcome page be inside WEB-INF?