ServletRequest、 HttpServletRequest、Request的联系与区别

一、
servlet理论上可以处理多种形式的请求响应形式    http只是其中之一

所以HttpServletRequest HttpServletResponse分别是ServletRequest和ServletResponse的之类二 、

HttpServletRequest和ServletRequest都是接口

HttpServletRequest继承自ServletRequest

HttpServletRequest比ServletRequest多了一些针对于Http协议的方法。如getHeader (String name), getMethod () ,getSession () 等等。

他们对应的实现类:

javax.servlet.ServletRequestWrapper (implements javax.servlet.ServletRequest)

javax.servlet.http.HttpServletRequestWrapper (implements javax.servlet.http.HttpServletRequest)

三  、

  所谓的request(在JSP中使用的)其实只是规范中的一个名称而已。它当然是一个对象,但并不是SUN提供的,这是由各个不同的Servlet提供商编写的,SUN只是规定这个类要实现HttpServletRequest接口,并且规定了各个方法的用途,但具体是什么类是由各个提供商自己决定的。

时间: 2024-11-26 02:30:34

ServletRequest、 HttpServletRequest、Request的联系与区别的相关文章

转:request.getSession(true)和request.getSession(false)的区别

转自:http://www.cnblogs.com/tv151579/p/3870905.html 1.转自:http://wenda.so.com/q/1366414933061950?src=150 概括: request.getSession(true):若存在会话则返回该会话,否则新建一个会话. request.getSession(false):若存在会话则返回该会话,否则返回NULL ==================================================

获取HttpServletRequest request对象 和 HttpServletResponse response对象

方法一:       HttpServletRequest request = Struts2Utils.getRequest(); HttpServletResponse response = Struts2Utils.getResponse(); 方法二:         HttpServletRequest request = ServletActionContext.getRequest(); HttpServletResponse response = ServletActionCon

request与session的区别

request对象和session对象的最大区别是生命周期与范围. request request范围较小一些,只是一个请求. request对象的生命周期是针对一个客户端(说确切点就是一个浏览器应用程序)的一次请求,当请求完毕之后,request里边的内容也将被释放点掉. 就是你在页面上的一个操作,request.getParameter()就是从上一个页面中的url.form中获取参数. 例如:js function goback(){ var jfssq = $("#jfssq"

request.getSession(true)和request.getSession(false)的区别

request.getSession(true):若存在会话则返回该会话,否则新建一个会话. request.getSession(false):若存在会话则返回该会话,否则返回NULL. 三种重载方法 现实中我们经常会遇到以下3种用法: HttpSession session = request.getSession(); HttpSession session = request.getSession(true); HttpSession session = request.getSessi

HttpServletRequest的Attribute和Parameter区别

HttpServletRequest类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下的组件通过getParameter()方法来获得请求参数,例如假定welcome.jsp和authenticate.jsp之间为链接关系,welcome.jsp中有以下代码: <a href="authenticate.jsp username=weiqin">authenticate.jsp a> html 代码 或者: <form

javaweb中重定向和请求转发(response.sendRedirect()和request.getRequestDispatcher(rul).forward(request,response)))的区别

先来两张图,方便理解: 可以看出,重定向时,是服务器向游览器重新发送了一个response命令,让游览器再次向url2发送请求,以获取url2的资源 而请求转发时,类似于是服务器自己向自己发了一个跳转,然后将结果直接给游览器,这也是问什么游览器会不改变url地址.下面是具体总结他们的区别 一.response.sendRedirect(url)-服务器将新url发送给游览器,游览器再根据新url请求 Request.getRequestDispatcher(url).forward(reques

Request,Request.QueryString,Request.Params,Request.Form,Request.ServerVariables之间的区别

常见的aspx页面传值方式 1.get方式 发送页面:<a href="RequestPage.aspx?name=value"></a> 接收页面:Request["name"],Request.QueryString["name"],Request.Params["name"] 2.post方式 发送页面: <form mathod="post" action="

HTTP请求中 request payload 和 formData 区别?

原文地址: http://www.cnblogs.com/tugenhua0707/p/8975615.html FormData和Payload是浏览器传输给接口的两种格式,这两种方式浏览器是通过Content-Type来进行区分的(了解Content-Type),如果是 application/x-www-form-urlencoded的话,则为formdata方式,如果是application/json或multipart/form-data的话,则为 request payload的方式

JSP:EL中 pageContext.request 和 requestScope 的区别?

Q1: A: pageContext.request是一个具体的对象,在你的http请求过程中存在.requestScope是一个Map,这个Map中存放了在request作用域中的属性键值对,就这么简单而已,它不是request对象,而是request对象属性的封装,pageContext.request才是真正的request对象.EL中你可以在这个周期中放置.获取对象.(当然,其实真正的操作也是针对request对象的). 比如${requestScope.a},其实就是要表明我告诉jsp