首页 > 其他分享 >Response-重定向代码实现、特点

Response-重定向代码实现、特点

时间:2023-02-09 09:24:05浏览次数:42  
标签:javax 重定向 代码 request Response import servlet response

Response-重定向-代码实现

  案例:

    1.完成重定向

      重定向:资源跳转的方式

      代码实现:

        设置状态码302

          response.setStatus(302);

        设置响应头location

          response.setHeader("location","/day15/responseDemo2");

        简单的重定向方法

          response.sendRedirect("/day15/responseDemo2");

package com.example.day_14_response;

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("/responseDemo1")
public class ResponseDemo1 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        System.out.println("demo1........");



        //访问/responseDemo1,会自动跳转到/responseDemo2资源
       /* //1. 设置状态码为302
        response.setStatus(302);
        //2.设置响应头location
        response.setHeader("location","/day15/responseDemo2");*/

        request.setAttribute("msg","response");

        //动态获取虚拟目录
        String contextPath = request.getContextPath();

        //简单的重定向方法
        response.sendRedirect(contextPath+"/responseDemo2");
        //response.sendRedirect("http://www.itcast.cn");

    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.doPost(request,response);
    }
}
package com.example.day_14_response;

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("/responseDemo2")
public class ResponseDemo2 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("demo2222222........");

        Object msg = request.getAttribute("msg");
        System.out.println(msg);
    }

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

Response-重定向-特点

  重定向的特点:redirect

    1.地址栏发生变化

    2.重定向可以访问其他站点(服务器)的资源

    3.重定向是两次请求。不能使用request对象来共享数据

  转发的特点:forward

    1.转发地址栏路径不变

    2.转发只能访问当前服务器下的资源

    3.转发是一次请求,可以使用request对象来共享数据

标签:javax,重定向,代码,request,Response,import,servlet,response
From: https://www.cnblogs.com/wsfj/p/17104067.html

相关文章