Servlet学习——请求跳转和重定向

简介: Servlet学习——请求跳转和重定向

请求跳转

服务器端的一种跳转方式

req.getRequestDispatcher("跳转到的路径").forward(req,resp);

特点

 地址栏不会发生改变

 服务端(一般就指浏览器)行为

 请求跳转只有一次请求

 数据在request作用域中可以共享

 绝地地址定位到站点后

重定向

客户端的一种跳转方式

resp.sendRedirect("跳转到的路径");

特点

 地址栏发生变化

 客户端行为

 两次请求

 数据在两个request作用域中不共享

 绝对地址可写到http://

简而言之,就像买东西一样 我是买衣服的 但你要找我买零食

我去别的地方买 然后发给你 这个叫请求转发

我把你想要的东西的商家推给你(地址栏发生变化) 而你去和那个商家的聊天内容我并不会知道(request不共享)这个叫重定向

(对上面特点中绝对地址的解释:请求转发的地址只能跳转到当前项目的资源,而重定向可以跳转到任何资源)

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("/Servlet11")
public class Servlet11 extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("Servlet11==================");
//        设置作用域
        String admin = "sb";
        req.setAttribute("admin",admin);
//        请求转发 服务器端req跳转
//        req.getRequestDispatcher("index_Servlet10.jsp").forward(req,resp);
//        重定向 客户端resp跳转
//        resp.sendRedirect("index_Servlet10.jsp");
//        路径问题(跳转到百度)
//        req.getRequestDispatcher("https://www.baidu.com").forward(req,resp);
//        HTTP状态 404 - 未找到
//        resp.sendRedirect("https://www.baidu.com");
//        可以找到
//        请求转发的地址只能跳转到当前项目的资源,而重定向可以跳转到任何资源
    }
}
相关文章
|
5月前
|
小程序 Java 应用服务中间件
【JavaWeb学习】—Servlet(十三)
【JavaWeb学习】—Servlet(十三)
|
13天前
|
安全 Java 网络安全
Servlet 教程 之 Servlet 客户端 HTTP 请求 2
Servlet教程介绍了如何在Servlet中处理HTTP请求,包括获取Cookie、头信息、参数、Session等。方法如:`getCookies()`、`getAttributeNames()`、`getHeaderNames()`、`getParameterNames()`等。还能获取身份验证类型、字符编码、MIME类型、请求方法、远程用户信息、URL路径、安全通道状态以及请求内容长度等。此外,可通过`getSession()`创建或获取Session,并以`Map`形式获取参数。
21 8
|
8天前
|
设计模式 存储 前端开发
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
|
8月前
|
缓存 Java 数据库
Servlet 处理请求的原理
Servlet 处理请求的原理
175 0
|
5月前
|
Web App开发 前端开发 JavaScript
AJAX POST请求中参数以form data和request payload形式在servlet中的获取方式
AJAX POST请求中参数以form data和request payload形式在servlet中的获取方式
32 0
|
7月前
|
Java 容器
Jsp之四 servlet请求响应
Jsp之四 servlet请求响应
48 0
|
8月前
|
存储 应用服务中间件 数据库
Servlet请求转发和重定向
Servlet请求转发和重定向
113 0
|
8月前
|
应用服务中间件 API
JavaWeb 速通Servlet(请求转发和请求重定向)
JavaWeb——HttpServletRequest 和 HttpServletResponse 内容分享。
130 0
|
11月前
|
XML 数据格式 容器
Servlet进阶(链接传值、XML配置、转发与重定向)
Servlet进阶(链接传值、XML配置、转发与重定向)
98 0
|
12月前
|
应用服务中间件
Tomcat - 源码分析Tomcat是如何处理一个Servlet请求的
Tomcat - 源码分析Tomcat是如何处理一个Servlet请求的
55 0