文章目录

  • Servlet页面之间跳转
  • HttpServletRequest对象
  • HttpServletResponse对象
  • 请求转发和重定向区别


Servlet页面之间跳转

说到Servlet跳转,不得不提一下HttpServletRequest和HttpServletResponse接口

Tomcat收到客户端的http请求,会针对每一次请求,分别创建一个代表请求的request对象、和代表响应的response对象

HttpServletRequest对象

HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,开发人员通过这个对象的方法,可以获得客户这些信息。

HttpServletResponse对象

http响应由状态行、实体内容、消息头、一个空行组成。HttpServletResponse对象就封装了http响应的信息。

页面之间的跳转方式有:请求转发和重定向

请求转发和重定向区别

请求转发

重定向

对象

request

response

方法

request.getRequestDispatcher(String path).forward(request,response);

response.sendRedirect(String path);

位置

服务器

浏览器

地址栏

不变

变为新的请求路径

路径"/”

代表本应用程序的根目录

代表webapps目录

URL范围

只能去往当前web应用的资源

可去往任意资源

请求次数

1次

2次

参数

任意参数

字符串

状态码

200

302

跳转时间

立即跳转

执行完后面代码,才跳转

请求转发发生在服务器,所以造成地址栏不会变,这也就是说浏览器是不知道跳转的动作,转发是对浏览器透明的。