zoukankan      html  css  js  c++  java
  • 浅谈servlet版本

    说白话,eclipseJ2EE版本新建一个web项目后,在IDE中的项目根目录下会看到2.3,2.4,2.5,3.0,3.1。。。。据说最新的4.0在路上,已经有草案了,很期待ing。

    360百科是这么描述的:

    Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

    Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

    最早支持Servlet标准的是JavaSoft的Java Web Server。此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。

    等等了,还有很多就不再粘贴,主要说下版本问题:

    Servlet2.2

    :引入了 self-contained Web applications 的概念。

    servlet2.3

    : 2000年10月份出来

    Servlet API 2.3中最重大的改变是增加了 filters

    Servlet 2.3 增加了 filters 和 filter chains 的功能。引入了 context 和 session listeners 的概念,当 context 或 session 被初始化或者被将要被释放的时候,和当向 context 或 session 中绑定属性或解除绑定的时候,可以对类进行监测。

    servlet2.4

    : 2003年11月份出来

    Servlet 2.4 加入了几个引起关注的特性,没有特别突出的新内容,而是花费了更多的功夫在推敲和阐明以前存在的一些特性上,对一些不严谨的地方进行了校验。

    Servlet 2.4 增加了新的最低需求,新的监测 request 的方法,新的处理 response 的方法,新的国际化支持,RequestDispatcher 的几个处理,新的 request listener 类,session 的描述,和一个新的基于 Schema 的并拥有 J2EE 元素的发布描述符。这份文档规范全面而严格的进行了修订,除去了一些可能会影响到跨平台发布的模糊不清的因素。总而言之,这份规范增加了四个新类,七个新方法,一个新常量,不再推荐使用一个类。

    注意:改为 Schema 后主要加强了两项功能:

    (1) 元素不依照顺序设定;

    (2) 更强大的验证机制。

    主要体现在:

    a.检查元素的值是否为合法的值

    b.检查元素的值是否为合法的文字字符或者数字字符

    c.检查 Servlet, Filter, EJB-ref 等等元素的名称是否唯一

    2.新增 Filter 四种设定:REQUEST、FORWARD、INCLUDE 和 ERROR。

    3.新增 Request Listener、Event和Request Attribute Listener、Event。

    4.取消 SingleThreadModel 接口。当 Servlet 实现 SingleThreadModel 接口时,它能确保同时间内,只能有一个 thread 执行此 Servlet。

    5.<welcome-file-list>可以为Servlet。

    6.ServletRequest接口新增一些方法。

    public String getLocalName();

    public String getLocalAddr();

    public int getLocalPort();

    public int getRemotePort()

    Servlet2.5

    2005 年 9 月发布 Servlet 2.5

    Servlet 2.5 一些变化的介绍:

    1) 基于最新的 J2SE 5.0 开发的。

    2) 支持 annotations 。

    3) web.xml 中的几处配置更加方便。

    4) 去除了少数的限制。

    5) 优化了一些实例

    Servlet 的各个版本对监听器的变化有:

    (1) Servlet 2.2 和 jsp1.1

    新增Listener:HttpSessionBindingListener

    新增Event: HttpSessionBindingEvent

    (2) Servlet 2.3 和 jsp1.2

    新增Listener:ServletContextListener,ServletContextAttributeListener

    ,HttpSessionListener,HttpSessionActivationListener,HttpSessionAttributeListener

    新增Event: ServletContextEvent,ServletContextAttributeEvent,HttpSessionEvent

    (3) Servlet 2.4 和 jsp2.0

    新增Listener:ServletRequestListener,ServletRequestAttribureListener

    新增Event: ServletRequestEvent,ServletRequestAttributeEvent

    Servlet3.0

    Servlet 3.0 作为 Java EE 6 规范体系中一员,随着 Java EE 6 规范一起发布。该版本在前一版本(Servlet 2.5)的基础上提供了若干新特性用于简化 Web 应用的开发和部署。其中有几项特性的引入让开发者感到非常兴奋,同时也获得了 Java 社区的一片赞誉之声:

    Servlet4.0草案

    从3.1到4.0将是对Servlet 协议的一次大改动,而改动的关键之处在于对HTTP/2的支持。HTTP2将是是继上世纪末HTTP1.1协议规范化以来首个HTTP协议新版本,相对于HTTP1.1,HTTP2将带来许多的增强。在草案提议中,Shing Wai列举出了一些HTTP2的新特性,而这些特性也正是他希望在Servlet 4.0 API中实现并暴露给用户的新功能,这些新特性如下:

    1.请求/响应复用(Request/Response multiplexing)

    2.流的优先级(Stream Prioritization)

    3.服务器推送(Server Push)

    4.HTTP1.1升级(Upgrade from HTTP 1.1)

  • 相关阅读:
    2015531 网络攻防 Exp1 PC平台逆向破解(5)M
    2017-2018-1 20155331 嵌入式C语言
    20155330 《网络对抗》 Exp9 web安全基础实践
    20155330 《网络对抗》 Exp8 Web基础
    20155330 《网络对抗》 Exp7 网络欺诈防范
    20155330 《网络对抗》 Exp6 信息搜集与漏洞扫描
    20155330 《网络对抗》 Exp5 MSF基础应用
    20155330 《网络攻防》 Exp4 恶意代码分析
    20155330 《网络攻防》 Exp3 免杀原理与实践
    20155330 《网络对抗》 Exp2 后门原理与实践
  • 原文地址:https://www.cnblogs.com/hehheai/p/6509635.html
Copyright © 2011-2022 走看看