JSP2.0 学习笔记 (3)

 
Servlet 2.4 的 新功能:
 
        1。 web.xml 改用XML Schema :主要加强两项功能:
       (1) 元素可不依照顺序设定;
             在Servlet 2.3 版 : <servlet-mapping>元素必须在<servlet>元素之后
         在Servlet 2.4版之后,不再须注意元素的顺序。
       
       (2) 更强大的验证机制 :
           (a) 可检查元素的值是否为合法的值。例如:<filter-mapping>的<dispatcher>元素,其值只
                   能为REQUEST、FORWARD、INCLUDE 和ERROR,如下所示:
                <filter-mapping>
                <filter-name>Hello</filter-name>
                <url-pattern>/CH11/*</url-pattern>
                <dispatcher>REQUEST</dispatcher>
                <dispatcher>FORWARD</dispatcher>
            </filter-mapping>
         若<dispatcher>元素的值不为上述四种时,此web.xml 将会发生错误。
 
           (b) 可检查如Servlet、Filter 或EJB-ref 等等元素的名称是否惟一。.
           (c) 可检查元素值是否为合法文字字符或数字字符。
       
    2.   新增Filter 四种设定;
             Servlet 2.4 版新增的Filter 四种设定为:REQUEST、FORWARD、INCLUDE 和ERROR。
            Servlet 2.3 版新增了Filter的功能,不过它只能由客户端发出请求来调用Filter,但若使用
         RequestDispatcher.forward( )或RequestDispatcher.include( )的方法调用Filter 时,Filter
         却不会执行。因此,在Servlet 2.4版中,新增Filter的设定<dispatcher>来解决这个问题。有关
         Filter 的部分在本书“第十一章:Filter 与Listener”有更详细的介绍。
            Servlet 2.4 版新增的Filter 四种设定为:REQUEST、FORWARD、INCLUDE 和ERROR。假若你有
         一个SimpleFilter,它只允许由客户端发出请求或由RequestDispatcher.include( )的方式来调用
          执行SimpleFilter,此时SimpleFilter 的设定如下:
 
        3.   新增Request Listener、Event 和Request Attribute Listener、Event。
        
        Listener 接口                      Event 类
        ServletContextListener             ServletContextEvent
        ServletContextAttributeListener    ServletContextAttributeEvent
        HttpSessionListener                HttpSessionEvent
        HttpSessionActivationListener
        HttpSessionAttributeListener
 
        Listener 接口                        Event 类
        ServletRequestListener               ServletRequestEvent
        ServletRequestAttributeListener      ServletRequestAttributeEvent
 
    4. Servlet 2.4 其他较显著的变更如:
    (1) 取消SingleThreadModel接口。当Servlet实现SingleThreadModel 接口时,它能确保同时间
    内,只能有一个thread 执行此Servlet。
    (2) <welcome-file-list>可以为Servlet .
    (3) ServletRequest 接口新增一些方法,如:
        public String getLocalName( );
        public String getLocalAddr( );
        public int getLocalPort( );
        public int getRemotePort( );
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值