`

Servlet概述

阅读更多

一.Servlet的结构

        在Servlet API中最重要的是Servlet interface. 所有的servlets implement(执行)这个interface, 方式多种:或者是直接的,或者通过extending 这个class执行它,如 HttpServlet. 这个Servlet interface 提供安排servlet与客户端联系的方法. Servlet 编写者可以在他们开发servlet程序时提供更多一些或所有的这样方法.
       当一个servlet接收来自客户端的调用请求, 它接收两个对象: 一个是ServletRequest,另外一个是ServletResponse. 这个ServletRequest class 概括从客户端到服务器之间的联系, 而 ServletResponse class 概括从servlet返回客户端的联系.

         ServletRequest interface 可以获取到这样一些信息如由客户端传送的阐述名称,客户端正在使用的协议, 产生请求并且接收请求的服务器远端主机名. 它也提供获取数据流的servlet, ServletInputStream, 这些数据是客户端引用中使用HTTP POST 和 PUT 方法递交的. 一个ServletRequest的子类可以让servlet获取更多的协议特性数据. 例如: HttpServletRequest 包含获取HTTP-specific头部信息的方法.
         ServletResponse interface 给出相应客户端的servlet方法. 它允许servlet设置内容长度和回应的mime类型, 并且提供输出流, ServletOutputStream, 通过编写者可以发回相应数据. ServletResponse子类可以给出更多protocol-specific容量的信息。 例如: HttpServletResponse 包含允许servlet操作HTTP-specific头部信息的方法.
上面有关classes 和 interfaces描述构成了一个基本的Servlet框架. HTTP servlets有一些附加的可以提供session-tracking capabilities的方法. servlet编写者可以用这些API在有他人操作时维护servlet与客户端之间的状态.

二.编写Servlet

         Servlets 执行 javax.servlet.Servlet interface. servlet编写者可以通过直接implement interface开发servlet, 但这样通常没有必要. 因为大多数servlet是针对用HTTP协议的web服务器, 这样最通用开发servlet办法是用 javax.servlet.http.HttpServlet 内.HttpServlet 类通过extend GenericServlet基类执行 Servlet interface, 提供了处理HTTP协议的功能. 他的service方法支持标准HTTP/1.1请求. 一般地, 用HttpServlet指定的类编写的servlets可以多线程地并发运行service方法. 
         Servlet编写者注意HttpServlet类有几个欠缺的方法,你可以自己定义方法中内容,但是必须使用这些方法名称以使servlet知道你想做什么。              

 

         doGet, 用于处理 GET、有条件的GET 和头部 HEAD请求
         doPost, 用户处理 POST 请求
         doPut, 用于处理 PUT 请求
         doDelete, 用于处理 DELETE请求
         HttpServlet的service方法, 一般地, 当它接收到一个OPTIONS请求时,会调用doOptions 方法, 当接收一个TRACE请求是调用doTrace . doOptions缺省执行方式是自动决定什么样的HTTP被选择并且返回哪个信息. 在你使用这些方法时,必须带两个阐述. 第一个包含来自客户端的数据HttpServletRequest. 第二个参数包含客户端的响应HttpServletResponse.
在下例中是这样的情况.
          一个HttpServletRequest对象提供到达HTTP 头部数据, 也允许你获取客户端的数据. 怎样获取这些数据取决于HTTP端请求方法.
不管任何HTTP方式, 你可以用]getParameterValues方法, 这个用来返回特定名称的参数值. 对于用 HTTP GET 请求的方式, 这个getQueryString方法将会返回一个可以用来解剖分析的。

          对于用HTTP POST, PUT, 和 DELETE请求的方式, 你有两种方法可以选择. 如果是文本数据,你能通过getReader方法用BufferedReader获取;如果是二进制数据, 能通过getReader 方法用 ServletInputStream获取。

          为了响应客户端, 一个HttpServletResponse对象提供返回数据给用户的两个方法。你可以用getWriter 方法返回,或者 getOutputStream 方法以输出流返回。 你应该用getWriter返回文本数据,而用getOutputStream返回二进制数据. 在使用Writer 或 OutputStream之前, HTTP 头部应该先被设置。HttpServletResponse内提供这样一个方法,之后可以用writer 或 outputstream 将响应主体部分发回用户. 完成后要关闭 writer 或 output stream以便让服务器知道响应已经完毕.


 

分享到:
评论

相关推荐

    servlet概述以及API中文版及学习笔记综合

    servlet概述以及API中文版及学习笔记综合,介绍详细,方便大家学习

    Servlet概述和入门.pdf

    1、Servlet 是 JavaEE的规范之一。(规范就是接口) 2、Servlet是 三大组件之一。 JavaWeb 三大组件分别是:**Servlet 程序、Filter 过滤器、Listener 监听器**。 3、Servlet 是运行在服务器上的一个 java 小程序,...

    servlet概述

    结合实例讲解了sevlet的基本概念和应用

    JavaWeb中的Servlet概述,帮助初学者认识何为Servlet

    一、JavaWeb介绍 1、Web ...的、动态交互的、跨平台的分布式图形信息系统。是建立在Internet上的一种网络服务,为浏览者在 Internet上查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将...

    Servlet概述的详细文档,帮助初学者认识何为servlet

    # 一、JavaWeb介绍 ## 1、Web ...是建立在**Internet**上的一种网络服务,为浏览者在Internet上查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将Internet上的信息节点组织成一个互为关联的...

    Servlet概述ppt

    主讲:吕鹏 lvpeng@hwadee.com

    Java中的Servlet基本概述

    Java中的Servlet基本概述电子书籍

    Servlet Jsp 技术概述

    Servlet Jsp 技术概述 是一套完整的Servlet/Jsp 技术学习资料,附示例代码 个人感觉很不错

    第10章 Java Servlet技术.ppt

    主要内容: Servlet概述 如何编写Servlet Servlet与客户端的交互 Servlet过滤器 Servlet监听器

    Servlet Jsp 技术概述 pdf

    《Servlet Jsp 技术概述》 pdf 包含代码

    JavaWeb的三大组件详细总结

    文章目录一、Servlet(Server Applet)1、Servlet概述:1、ServletConfig API:2、GenericServlet类2、HttpServlet类:(重点掌握)1、doGet和doPost的区别:2、Servlet细节:3、web.xml文件(了解)4、...

    Java.Servlets编程指南

    第1章 servlet概述第2章 Java Web服务器第3章 第一个servlet 第4章 servlet链第5章 servlet-side Includes 第6章 会话管理第7章 安全性 第8章 HTML表单第9章 在servlet中使用JDBC 第10章 applet与servlet的通信第11...

    Java_Servlet技术概述和实例

    Java_Servlet技术概述和实例,Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用...

    Servlet+Jsp+技术概述

    Servlet+Jsp+技术概述Servlet+Jsp+技术概述

    Servlet java

    Web编程模型 Http协议 Get请求和Post请求 Servlet概述 Web服务器 Servlet的配置文件 Servlet的调用过程 Servlet的接口 Web容器概述 Web容器实现

    Java数据库技术详解 DOC简版

    7.1 Servlet概述 7.2 JDBC在Servlet中的使用 7.3 JSP概述 7.4 JDBC结合JSP使用 7.5 JDBC结合Servlet和JSP使用的例子 7.6 本章小结 第三篇 Hibernate篇 第8章 Hibernate基础 第9章 Hibernate API简介...

    jsp+servlet+javabean.ppt

    9.1 Servlet概述 9.2 Servlet的基本结构与成员方法 9.3 调用Servlet的多种方法 9.4 两种模式的JSP技术 9.5 Servlet模式的留言板案例 9.6 Servlet的会话跟踪 习题9

    Servlet&jsp概述1

    Servlet&jsp概述1.rar

    Servlet&jsp概述

    Servlet&jsp概述1.rar,有时间的看看啊

Global site tag (gtag.js) - Google Analytics