dispatcher 调度的意思 [dɪˈspætʃər]
Attribute 属性的意思 [ ˈætrɪbjuːt] 
package com.itheima.web;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.nio.charset.StandardCharsets;/*** 请求转发*/@WebServlet("/req5")public class RequestDemo5 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("demo5...");// 存储数据 存储一个键值对的数据,存储到request对象当中,然后会随着下面的forward转发到req6中request.setAttribute("msg","hello"); // 第一个参数写数据名,后面接数据内容// 请求转发: 将对应的demo5 的 request 和response对象转发过去// 第一个参数填:需要转发的路径(填demo6.java的虚拟路径)// 第二个参数填: 需要转发的对象request.getRequestDispatcher("/req6").forward(request,response);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}}
package com.itheima.web;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;/*** 请求转发*/@WebServlet("/req6")public class RequestDemo6 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("demo6...");//获取数据Object msg = request.getAttribute("msg"); // 根据数据名得到数据类型System.out.println(msg);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}}
