首页 > 其他分享 >web学习(三)

web学习(三)

时间:2023-04-09 20:56:07浏览次数:32  
标签:web service Servlet 接口 方法 学习 ServletContext ServletConfig

本文接上文

一、ServletRequset接口
  对于每一个HTTP请求,Servlet容器都会创建一个ServletRequest实例,并将他传递给service方法。ServletRequset封装了关于这个请求的信息。
  ServletRequset接口中定义了一些方法:
  

   getParameter是在ServletRequest中最常用的方法。该方法通常是用来返回HTML表单域的值,getParameter也可以用于获取查询字符串的值。
 二、ServletResponse接口

  javax.servlet.ServletResponse接口表示一个Servlet响应,在调用service方法之前Servlet容器首先创建一个ServletResponse的实例,并将他作为第二个参数传入到service方法中,ServletResponse隐藏了像浏览器发送响应的复杂过程。
  在ServletResponse接口中,定义的方法之一是getWriter方法,该方法返回了一个可以向客户端发送文本的java.io.aPrintWriter。默认的情况下该对象采用的是ISO-8859-1的编码方式。
三、ServletConfig
当Servlet容器初始化Servlet的时候,Servlet容器会给Servlet的init方法传入一个ServletConfig的实例,该实例中封装了可以通过@WebServlet或者部署描述符传递给Servlet的配置信息
这样传入的每一条信息就是一个初始参数,一个初始参数有key合 value两个元件
为了从Servlet内部获取到初始参数的值,要在Servlet容器传给Servlet的init方法的ServletConfig中调用getInitParameter方法,getInitParameter方法的签名如下:

此外,getInitParameterNames方法则是返回所有初始化参数名称的一个Enumeration:

举个例子,当要获取contactName参数的值,要使用下面的方法签名

除了getInitParameter和getInitParameterNamespace之外,ServletConfig还提供了一个很有用的方法:getServletContext。利用这个方法可以从Servlet内部获取ServletContext。

四、ServletContext
ServletContext表示Servlet应用程序,每个应用程序只有一个上下文对象,当把一个应用程序同时部署到多个容器的分布式环境中的时候,每个jvm上面的Web应用程序都会有一个ServletContext对象。
通过ServletConfig中调用getServletContext方法,可以获得ServletContext实例,有了ServletContext就可以共享从应用程序中所有资料处访问到的信息,并且可以动态的注册web对象,前者将对象保存在ServletContext内部的Map中,
保存在ServletContext中的对象被称作为属性
ServletContext中的以下的方法负责处理属性:

五、GenericServlet抽象类
GenericServlet实现了Servlet和ServletConfig两个接口,并且完成了以下任务:
1、将init方法中的ServletConfig付给一个类级的变量,以便可以通过调用getServletConfig获取,
2、将接口中的所有方法提供默认实现,
3、提供方法,包围ServletConfig中的方法

六、HttpServlet
HttpServlet类覆盖了javax.servlet.GenericServletl类,在使用HttpServlet的时候,还要借助分别代表Servlet请求和Servlet响应的HttpServletRequest和HttpServletResponse对象。
HttpServletRequest接口扩展了javax.servlet.ServletRequest,HttpServletResponse接口扩展了javax.servlet.ServletResponse。
HttpServlet覆盖了GenericServlet中的service方法,并且通过下面的签名再添加一个service方法:
protected void service(HttpServletRequest request,HttpServletResponse response) throws ServletException,java.io.IOException
新的service方法和javax.servlet.Servlet中的service方法之间的区别在于参数列表不同

标签:web,service,Servlet,接口,方法,学习,ServletContext,ServletConfig
From: https://www.cnblogs.com/zjsdbk/p/17301027.html

相关文章

  • MarkDowm学习
    MarkDown学习标题n个#加空格加标题名,n最多为6字体helloworld!helloworldhelloworldhelloworld引用雪宝努力成为第一只需一个>分割三个-或三个*图片这是浏览本地图片的地址也可以粘贴图片地址超链接点击跳转到bugfree就可,[]内是标题,()内是地址列表......
  • AMBA总线(3)—— AHB学习笔记
    前面学习APB总线时,由于内容不多就直接将APB4手册翻译了下。到了AHB总线再这样学习就不好了,一是逐句翻译太累人,二是原文翻译过来划不清重点。因此APB总线以学习笔记的形式记录下来,但其实大多数也就是手册的翻译和理解。1AHB特点AHB协议相比APB协议更加复杂,性能更加优越,手册上也......
  • http协议学习
    既然学习web,就少不了HTTP协议,以下是我对此的一些总结1、概念:客户端连上web服务器后,若想获得web服务器中的某个web资源,需遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通迅的格式(规定客户端和服务器如何进行交互)。HTTP是hypertexttransferprotocol(超文本传输协议)的简......
  • SpringBoot集成WebSocket
    SpringBoot集成WebSocket参考https://www.cnblogs.com/xuwenjin/p/12664650.html前言:WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC6455,并由RFC7936补充规范。WebSocketAPI也被W3C定为标准。WebSocket使得客户端和服务......
  • WebKit三件套(3):WebKit之Port篇
    了解其有关Port方面的设计,从而了解究竟如何能移植WebKit到自己的应用中。WebKitPort方面的内容是可以很广的,例如可将不同的图形库、网络库与WebCore集成,提供不同的Port接口供外部程序使用等,例如同样在windows平台上可以运行的GoogleChrome和Safari就是针对WebKit的不同移植。我......
  • Andirod学习
    Android中使用HTTP协议访问网络的方法主要分为两种:使用HttpURLConnection使用HttpClient本文主要内容是HttpURLConnection的使用.HttpURLConnection的使用流程大致分为以下几步:1.获取HttpURLConnection对象conn2.设置conn的相关属性:a)setRequestMethod——GET/P......
  • 字符数组指针巩固学习
    1、字符数组的数组名存的就是字符数组的起始地址,类型是字符指针2、str系列字符串函数主要包括strlen,strcpy,strcmp,strcatstrlen:用于统计字符串长度strcpy:用于将某个字符串复制到字符数组中strcmp:用于比较两个字符串的大小,比较对应字符的ASCII码值strcat:用于将两个字符......
  • WebGIS|使用Openlayers获取Geoserver发布的WFS和WCS服务
    1、发布WFS和WCS服务发布WFS服务Web要素服务(WFS)支持对地理要素的插入,更新,删除,检索和发现服务。该服务根据HTTP客户请求返回GML数据。其基础接口是:GetCapabilities,DescribeFeatureType,GetFeatureGetCapabilities同上。DescribeFeatureType返回要素结构,以便客户端进行查询和......
  • Web开发|XML Schema (XSD) 学习
    采用XSD建立教师、学生之间的关系。假设有两个实体“学生”和“教师”,一个学生可以有多个老师,一个老师也可以有多个学生,二者为多对多的关系。在XSD中描述多对多的关系可以使用XML元素的引用和复杂类型的组合,使用中间表(或连接表)来表示多对多关系。首先,我们定义“学生”和“教师”......
  • SPECCPU2006的学习与使用
    SPECCPU2006的学习与使用摘要这个周末问题不是很多,陪孩子写作业时顺便研究了下SPEC2006虽然比较落后了.但是总比没有要强一些.其实集团有资源,但是联系不到人,只能自己学习和研究了.找了很多华为博客上面的知识点.但是依旧有很多问题想着先总结这,希望有时间慢慢完......