请求转发

本文介绍了一个简单的Servlet示例,展示了如何使用request对象进行请求转发,并将数据传递给转发的目标资源。同时,还介绍了如何在JSP页面中获取这些数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package request;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//请求转发,以及使用request域对象把数据带给转发资源
/*
 * 请求转发的特点:
 * 1.客户端只发一次请求,而服务器端有多个资源调用
 * 2.客户端浏览地址栏没有变化
 * 
 */
public class RequestDemo5 extends HttpServlet {

    //mvc (model javabean    v view(jsp)   c cotroller(servlet)   )
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        String data = "aaaaa";
        request.setAttribute("data", data);
        //request也可以实现转发s
        request.getRequestDispatcher("/message.jsp").forward(request, response);
    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doGet(request, response);
    }

}

jsp取出数据

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    <title>My JSP 'message.jsp' starting page</title>

  </head>

  <body>

        <%
            String message = (String)application.getAttribute("message");
            out.write(message);
         %>
  </body>
</html>

application:全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止。
getAttribute():返回由name指定的名字的application对象的属性的值.

服务器启动后就产生了这个application对象,当客户再所访问的网站的各个页面之间浏览时,这个application对象都是同一个,直到服务 器关闭。但是与session不同的是,所有客户的application对象都是同一个,即所有客户共享这个内置的application对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值