Servletrequest(Java中ServletRequest接口与HttpServletRequest接口有什么区别)

2023-11-26 23:00:04 :47

servletrequest(Java中ServletRequest接口与HttpServletRequest接口有什么区别)

本篇文章给大家谈谈servletrequest,以及Java中ServletRequest接口与HttpServletRequest接口有什么区别对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

本文目录

Java中ServletRequest接口与HttpServletRequest接口有什么区别

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

servlet中的request和response是相对谁来

servlet中的request和response均由Servlet容器创建,相当于"内置对象"。根据查询相关公开信息显示不管是Servlet对象,还是response对象和request对象,均由Servlet容器创建,相当于"内置对象",可以直接用,当浏览器客户端向服务器请求服务时,不可避免的会带有相应的请求数据,这便要借助request对象来实现。

servlet request.setAttribute

”request里面的应该是游览器发送过来的信息啊,response应该是服务器发送过去的信息。“这句话听着有点别扭,也对也不对,对在浏览器和服务器你没弄错,应该站在接收的角度看:”request里面的应该是服务器接收到的信息,response应该是浏览器接收到的信息。“而且,request和response是一先一后的关系,必然是先request, 再response。这么看来,Servlet API设计request里用setAttribute()方法先设置上,再从request里getAttribute()取出来比较合理。(当然,你非纠结response里应该有这个属性也对,但是从Java编程的角度,request这个变量设置一对set/get方法比较容易,它既然这么设计了,实现你也得遵守了)一切信息都是在服务器上(如 tomcat)保存的(包括变量、内存,或数据库中),Java编程(Servlet或JSP)都是针对服务器编程的,所以你修改了信息当然是要改动request里的内容了,request.setAttribute(...)

HttpServletRequest和ServletRequest的区别

区别如下:1)相同点:它们都是接口2)不同点:ServletRequest接口是HttpServletRequest接口的父接口,HttpServletRequest接口继承自ServletRequest接口3)实现类ServletRequestWrapper 实现ServletRequest接口,实现类HttpServletRequestWrapper继承ServletRequestWrapper 类并实现了HttpServletRequest接口,从而达到接口水平化效应。

HttpServletRequest的方法

HttpServletRequest方法总结***隐藏网址***getServerName()方法返回被发送请求的服务器的主机名getServerPort()方法返回被发送请求的端口号。getContextPath()返回请求地址的根目录,以"/"开关,但不是以"/"结尾。一个常用的获得服务器地址的连接字符串是:String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";getCookies() 取得cookie getMethod() 取得请求方法,如get,post或putgetRequestURL() 取得请求URL(统一资源定位符)getRequestURI() 取得请求URI(统一资源标识符)getSession() 取得对应sessiongetHeaderNames()返回请求包含的所有头名称的一个enumeration(遍历器)使用方法如下:Enumeration en = request.getHeaderNames(); while(en.hasMoreElements()){ out.print(en.nextElement()); }输出如下结果:accept accept-language accept-encoding user-agent host connection cookie具体含义是:Accept:浏览器可接受的MIME类型。Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。User-Agent:浏览器类型,如果Servlet返回的内容与浏览器类型有关则该值非常有用。Host:初始URL中的主机和端口。Connection:表示是否需要持久连接。如果Servlet看到这里的值为“Keep-Alive”,或者看到请求使用的是HTTP 1.1(HTTP 1.1默认进行持久连接),它就可以利用持久连接的优点,当页面包含多个元素时(例如Applet,图片),显著地减少下载所需要的时间。要实现这一点,Servlet需要在应答中发送一个Content-Length头,最简单的实现方法是:先把内容写入ByteArrayOutputStream,然后在正式写出内容之前计算它的大小。Cookie:这是最重要的请求头信息之一getHeader(name)返回指定名称的特定请求的值。使用方法如下:out.print("cookie:==="+request.getHeader("cookie")+"《br》");完整举例:accept:===*/*accept-language:===zh-cnaccept-encoding:===gzip, deflateuser-agent:===Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; TheWorld)host:===localhost:8080connection:===Keep-Alivecookie:===JSESSIONID=BF00F7FD72F5DF83DF8F62E3D5EFF960

servlet中request和response区别

request 是请求的载体,它附带着,请求的参数,ip,cookie,表单,字符编码,或者上传文件。你可以通过request去获得你所需要的信息。response是响应的载体,你可以设置,表头,报文,响应文件类型,字符编码,response,自带一个输出流,当你需要将一个页面或者一个文件传到客户端时,你可以通过这个流来进行操作。

文章分享结束,servletrequest和Java中ServletRequest接口与HttpServletRequest接口有什么区别的答案你都知道了吗?欢迎再次光临本站哦!

servletrequest(Java中ServletRequest接口与HttpServletRequest接口有什么区别)

本文编辑:admin
有什么区别 ,servletrequest
Copyright © 2022 All Rights Reserved 威海上格软件有限公司 版权所有

鲁ICP备20007704号

Thanks for visiting my site.