1. 地址栏输入 向服务器发送请求的方式,HttpServletRequest 对象_Servlet

2. 超链接 <a href = "  ">  </a>

3. Form 表单

4. ajax 

5. 请求转发

6. 重定向 

 

HttpServletRequest 对象:

来接收客户端发送过来的请求信息

1) 常用方法

向服务器发送请求的方式,HttpServletRequest 对象_Java开发_02

2) 获取请求头

 向服务器发送请求的方式,HttpServletRequest 对象_Servlet_03

3) 获取客户端请求参数(客户端提交的数据) 
 向服务器发送请求的方式,HttpServletRequest 对象_Servlet_04

 

请求乱码解决:

request 属于接收客户端的参数,在解析过程中默认使用的编码方式为 ISO-8859-1,此编码不支持中文

1.向服务器发送请求的方式,HttpServletRequest 对象_Java开发_05只对post请求有效

2.向服务器发送请求的方式,HttpServletRequest 对象_Java开发_06通用的

Tomcat8 起,以后的 GET 方式请求是不会出现乱码的(如若解码,则会乱码)

 请求转发

地址栏中的 URL 地址不会改变,从始至终只有一个请求发出向服务器发送请求的方式,HttpServletRequest 对象_Java开发_07

 

 request 作为域对象 :

作用范围:在一次请求中有效

request.setAttribute():设置域对象内容;

request.getAttribute(String name): 获取域对象内容;

request.removeAttribute(String name): 删除域对象内容。 

 

HttpServletResponse 对象 :

服务器对客户端的请求进行响应,将 Web 服务器处理后的结果返回给客户端

常用方法 :

向服务器发送请求的方式,HttpServletRequest 对象_Java开发_08

刷新和页面自动跳转 :

本页面2秒以后刷新:

resp.setHeader("refresh","2");

刷新后跳转:

response.setHeader("refresh","3;URL=ok.html");

以采用 HTML 的方式进行设置刷新

向服务器发送请求的方式,HttpServletRequest 对象_Servlet_09

 数据响应 

获取输出流,有两种形式 getWriter()获取字符流(只能响应回字符); getOutputStream()获取字节流(能响应一切数据)。响应回的数据到客户端被浏览 器解析。注意:两者不能同时使用。 

向服务器发送请求的方式,HttpServletRequest 对象_Java开发_10

向服务器发送请求的方式,HttpServletRequest 对象_Servlet_11

 

响应图片:

客户端请求 服务器的资源,在服务端获取到真实的图片资源,通过输入流读取到内存,然后通过输出流写出到客户端即可。 

向服务器发送请求的方式,HttpServletRequest 对象_Java开发_12

重定向跳转

两次请求,地址栏会发生变化

向服务器发送请求的方式,HttpServletRequest 对象_Java开发_13

请求转发和重定向比较: 

向服务器发送请求的方式,HttpServletRequest 对象_Java开发_14