如何在jsp页面加载时调用servlet

如何在jsp页面加载时调用servlet,第1张

如何在jsp页面加载时调用servlet 解决方案1

遵循的步骤:

  • 用于
    jsp:include
    从JSP调用Servlet,它将在运行时包含JSP中Servlet的响应
  • 在Servlet的请求中设置属性,然后在JSP中简单地读取它

样例代码

JSP:

<body>    <jsp:include page="/latest_products.jsp" />    <c:out value="${message }"></c:out></body>

Servlet:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {     request.setAttribute("message", "hello");}
编辑

但我不想在url中显示servlet的名称。

只需

url-pattern
为Servlet
定义一个不同而有意义的代码,
web.xml
如下所示,它看起来像一个JSP页面,但在内部它是一个Servlet。

web.xml:

<servlet>    <servlet-name>LatestProductsServlet</servlet-name>    <servlet-class>com.x.y.LatestProductsServlet</servlet-class></servlet><servlet-mapping>    <servlet-name>LatestProductsServlet</servlet-name>    <url-pattern>/latest_products.jsp</url-pattern></servlet-mapping>
解决方案2

遵循的步骤:

  • 第一次调用Servlet
  • 处理最新产品
  • 在请求属性中设置列表
  • 将请求转发到JSP,在此可以使用JSTL在JSP中轻松访问

样例代码:

Servlet:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {     request.setAttribute("message", "hello");    RequestDispatcher view=request.getRequestDispatcher("index.jsp");    view.forward(request,response);}

index.jsp:

<body>          <c:out value="${message }"></c:out></body>

点击URL:

scheme://domain:port/latest_products.jsp
将调用Servlet的
doGet()
方法。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4987405.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存