`
haofenglemon
  • 浏览: 243931 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

servlet

阅读更多
什么是Servlet?
       Servlet是一个Java编写的程序,此程序是在服务器端运行的,是按照Servlet规范编写的一个Java类。
   2.Servlet是做什么的?
       Servlet是处理客户端的请求并将其发送到客户端。
   3.Servlet API
   1>Servlet框架的组成
        Servlet框架是由2个Java包组成:(1)javax.servlet和(2)javax.servlet.http
       (1)javax.servlet包中定义了所有Servlet类都必须实现的接口和类。
          javax.servlet包的接口为:
                            ServletConfig接口  ---- 在初始化过程中由Servlet容器使用
                            ServletContext接口  ---- 定义Servlet用于获取容器信息的方法
                            ServletRequest接口 ---- 向服务器请求信息
                            ServletResponse接口 ----  响应客户端请求
                             Servlet接口  ---- 定义所有Servlet必须实现的方法
          javax.servlet包中的类为:
                              ServletInputStream类  ---- 用于从客户端读取二进制数据
                              ServletOutputStream类  ---- 用于将二进制数据发送到客户端
                               GenericServlet类  ---- 抽象类,定义一个通用的,独立于地层协议的Servlet。

       (2)javax.servlet.http包中定义了采用HTTP通信的HttpServlet类。
          javax.servlet.http包的接口为:
                         HttpServletRequest接口  ---- 提供http请求
                         HttpServletResponse接口  ---- 提供http响应
                         HttpSession接口  ---- 用于标识客户端并存储有关客户信息
                         HttpSessionAttributeListener接口  ----实现这个侦听接口用户获取会话的属性列表的改变的通知
          javax.servlet.http包中的类:
                         HttpServlet类 ---- 扩展了 GenericServlet的抽象类,用于扩展创建Http Servlet
                          Cookie类  ---- 创建一个Cookie,用于存储Servlet发送给客户端的信息
                                                     
   2>Servlet框架的核心
        Servlet框架的核心是:javax.servlet.Servlet接口,所有的Servlet都必须实现这一接口。
   4.Http Servlet
       HttpServlet是一个抽象类,用来创建用户自己的 HTTP Servlet。HttpServlet类的子类必须至少重写一下方法中的一个:doGet()和doPost()。

      HttpServlet类提供doGet()方法来处理GET请求
        public void doGet(HttpServletRequest req,HttpServletResponse res)
              提供doPost()方法处理POST请求 
        public void doPost(HttpServletRequest req,HttpServletResponse res)
        其中有2个参数:HttpServletRequset和HttpServlerResponse
         这2个类实现了ServlerRequset接口和ServletResponse接口
        ServletRequest接口中封装了客户请求信息<客户请求方式,参数名,参数值等>
        ServletResponse接口 为 Servlet提供了返回相应结果的方法。
     5.Servlet体系结构
          Servlet-->GenericServlet-->HttpServlet-->用户自定义的Servlet
     6.Servlet的生命周期
         Servlet的生命周期由Servlet容器控制,该容器创建Servlet的实例。
         Servlet生命周期就是指创建Servlet实例后响应客户请求直至销毁的全过程。
         1>Serlvet生命周期的三个方法:init()-->service()-->destroy()
         2>生命周期的各个阶段:
            实例化:Servlet容器创建Servlet类的实例对象
            初始化:Servlet容器调用Servlet的init()方法
            服务:如果请求Servlet,则容器调用service()方法
            销毁:销毁实例之前调用destroy()方法
            不可用:销毁实例并标记为垃圾处理

servlet是服务端的组件,servlet运行在servlet容器中,比如tomcat,在收到客户端请求的时候,容器把请求信息封装为Request对象,并创建Response对象,传给serlet的service()方法,真正要实现的功能可以在service()调用java代码。
  说到这些,就不能不提一下几个内建对象的作用范围。
  Request和Response对象:时间上再一次请求中,在这次请求中把Request中的信息传给别的资源,空间上只能是发送请求的客户端有效
   HttpSession:一次连接直到客户端关闭,时间上比上面的对象长一些,空间上一致
   ServletCofig:是在一个servlet实例化,对任何客户端任何时间都有效,但是只对本servlet有效。
   ServletContext:对任何客户端任何时间任何sevlet有效,是真正的全局变量。
    ServletCofig和ServletContext是我们的程序更加灵活,避免了硬编码,就是配置文件啦
    可以通过getInitParameter()方法访问



分享到:
评论

相关推荐

    javax.servlet jar包---解决找不到javax.servlet.*等问题

    当你遇到“找不到javax.servlet.*”这样的错误时,通常是因为你的项目缺少了这个库,所以需要引入`javax.servlet.jar`来解决问题。 1. **Java Servlet简介** Java Servlet是Java平台上的一个标准,用于扩展服务器...

    servlet基础与servlet容器模型

    Servlet是一个Java类,遵循javax.servlet.Servlet接口,它允许开发者扩展服务器的功能。当用户向Web服务器发送一个请求时,Servlet会接收到这个请求,处理数据,然后返回响应。Servlet的主要生命周期方法包括:`init...

    用于servlet程序的开发的servlet-jar包

    Servlet是Java平台上的一个核心组件,它允许开发者创建动态web应用程序。Servlet API是Java Servlet规范的一部分,它定义了服务器端程序如何与HTTP协议交互以及如何处理来自web客户端的请求并返回响应。`servlet.jar...

    jakarta-servletapi-4-src.zip servlet源码

    《深入理解Jakarta Servlet API 4.0源码》 Servlet技术是Java Web开发的核心,它为Web应用程序提供了服务器端的编程接口。Jakarta Servlet API 4.0是Servlet规范的最新版本,它包含了对HTTP协议处理、生命周期管理...

    Servlet基础知识总结

    ### Servlet基础知识总结 #### 一、Servlet简介 Servlet是一种服务器端的小程序,是Java平台上的一个重要的技术之一,主要用于处理客户端的HTTP请求并生成动态网页。Servlet是在服务器端运行的,能够提供各种服务...

    servlet线程安全问题

    Servlet 线程安全问题 Servlet 线程安全问题是指在使用 Servlet 编程时,如果不注意多线程安全性问题,可能会导致难以发现的错误。Servlet/JSP 技术由于其多线程运行而具有很高的执行效率,但这也意味着需要非常...

    javaEE servlet-api

    Servlet API还提供了Filter的概念,允许开发者在请求到达Servlet之前和响应离开Servlet之后对其进行拦截和处理。`javax.servlet.Filter`接口定义了`doFilter()`方法,这使得我们可以实现如认证、日志记录、数据过滤...

    Servlet3.0参考手册

    Servlet3.0是Java Web开发中的一个重要里程碑,它在Servlet2.5的基础上引入了许多新特性,极大地提高了开发效率和灵活性。这份"Servlet3.0参考手册"无疑为开发者提供了全面的API参考和实用指南。 首先,Servlet3.0...

    Java用注解的方式定义一个Servlet

    用注解的方式定义一个Servlet,就不用在web.xml中配置了。Servlet的访问URL是Servlet的必选属性,可以选择使用urlPatterns或者value定义。  像上面的AnnotationServlet可以描述成@WebServlet(name="Annotation...

    servlet-api 各种版本

    Servlet-API是Java Servlet技术的核心部分,它定义了服务器端与客户端之间交互的一系列接口和类。这个压缩包包含了Servlet-API的多个版本,分别是2.2、2.3、2.4、2.5以及3.0。每个版本的发布都带来了新的功能和改进...

    serlvet 源码 servlet-src 源文件

    `servlet-src`通常指的是Servlet的源代码,这对于理解Servlet的工作原理、学习如何编写Servlet以及进行自定义功能扩展非常有用。在这个压缩包中,我们可能会找到`javax`包,这是Java标准库的一部分,包含了Servlet...

    servlet-api中文文档

    它是Java Servlet和JavaServer Pages (JSP)技术的基础,提供了服务器端程序与Web客户端交互的能力。在这个压缩包中,包含的是对Servlet API的中文文档,可能是作者因为无法找到官方的源码和javadoc而自行整理的笔记...

    javax.servlet.jar下载

    Files contained in javax.servlet.jar: META-INF/MANIFEST.MF javax/servlet/http/LocalStrings.properties javax.servlet.http.HttpSessionBindingListener.class javax.servlet....

    Servlet3.1规范(最终版)

    Servlet3.1规范是Java服务器端编程的重要里程碑,它在原有的Servlet技术基础上进行了多项改进和扩展,极大地提升了Web应用的性能和开发效率。这个规范主要关注于Servlet、过滤器(Filter)和监听器(Listener)的...

    servlet3.0与mybatis整合的示例

    在Java Web开发中,Servlet和MyBatis是两个非常重要的技术。Servlet3.0作为Java Servlet规范的一个版本,引入了许多新特性,而MyBatis则是一个优秀的持久层框架,简化了数据库操作。本文将深入探讨如何将Servlet3.0...

    javax.servlet-api-4.0.1.jar中文文档.zip

    javax.servlet-api-***.jar中文文档.zip,java,javax.servlet-api-***.jar,javax.servlet,javax.servlet-api,***,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,javax,servlet,api,中文API文档,手册,开发...

    Head First Servlet & JSP

    《Head First Servlet & JSP》是一本非常受欢迎的IT教程,专为准备SCWCD(Sun Certified Web Component Developer)认证的读者设计。本书以其独特的学习风格,深入浅出地介绍了Servlet和JSP(JavaServer Pages)这两...

    简单的servlet例子新闻网站 全

    Servlet是Java Web开发中的一个重要组件,它用于扩展服务器的功能,处理客户端的请求并返回响应。在"简单的servlet例子新闻网站 全"这个项目中,我们可以深入理解Servlet在实际应用中的工作原理和常见应用场景。 ...

    Servlet3.1规范官方文档(中文版)

    根据提供的文件内容,以下是对Servlet3.1规范官方文档(中文版)中的知识点的详细说明。 首先,Servlet3.1官方文档是Java™ Servlet规范版本3.1的中文翻译版本。它详细描述了servlet技术规范的各个方面,包括对...

Global site tag (gtag.js) - Google Analytics