一.
getRequestURL方法返回客户端发出请求时的完整URL。

getRequestURI方法返回请求行中的资源名部分。

getQueryString 方法返回请求行中的参数部分。

getPathInfo方法返回请求URL中的额外路径信息。额外路径信息是请求URL中的位于Servlet的路径之后和查询参数之前的内容,它以“/”开头。

getRemoteAddr方法返回发出请求的客户机的IP地址

getRemoteHost方法返回发出请求的客户机的完整主机名

getRemotePort方法返回客户机所使用的网络端口号

getLocalAddr方法返回WEB服务器的IP地址。

getLocalName方法返回WEB服务器的主机名

二.获取请求头

1.getHeader方法

java获取前端list java获取前端的请求域名_java获取前端list


2.getHeaders方法

获取多个同名请求头对应的一组value值,因此返回枚举类型数据

3.getHeaderNames方法

/获取请求头的所有name值,返回的数据也是一个枚举类型的数据,将枚举中的元素依次遍历出来,根据name获取对应的value值,即可得到Http请求头的所有信息

三.获取客户端请求参数

1.getParameter方法

通过指定名称获取参数值,不区分get和post方法

2.getParameterValues(String name)方法

通过指定名称获取参数值数组,有可能一个名字对应多个值,例如表单中的多个复选框使用相同的name时;返回值应该用数组来接收。

3.getParameterNames方法

获取所有参数的名字;

4.getParameterMap方法

获取所有参数对应的Map,其中key为参数名,value为参数值。

四.使用Request实现转发

1.request可以像ServletContext一样实现Servlet之间的通讯,但是request的生命周期在一次请求中,ServletContext的生命周期在整个应用中。


2.request通过 getRequestDispatcher.forward(request,response)实现转发。 3.转发后,浏览器显示的网址还是原来的url。 4.不能在转发前写入数据,但是可以写响应头之类的;转发前写到缓冲区的数据会被清空,并不会输出。

转发和重定向的区别

1.给服务器用的直接从资源名开始写,给浏览器用的要把应用名写上


2. 转发时:执行到跳转语句时就会立刻跳转


    重定向:整个页面执行完之后才执行跳转。


3.转发的request对象可以传递各种类型的数据,包括对象。重定向只能传递字符串。


4.转发是服务器跳转只能去往当前web应用的资源。


   重定向是服务器跳转,可以去往任何的资源。


5.典型的应用场景:

转发: 访问 Servlet 处理业务逻辑,然后 forward 到 jsp 显示处理结果,浏览器里 URL 不变

重定向: 提交表单,处理成功后 redirect 到另一个 jsp,防止表单重复提交,浏览器里 URL 变了

java获取前端list java获取前端的请求域名_服务器_02


java获取前端list java获取前端的请求域名_数据_03

getRequestDispatcher.include(request,response)

include()方法可以实现包含网头和网尾的效果。

java获取前端list java获取前端的请求域名_重定向_04


java获取前端list java获取前端的请求域名_重定向_05