JSP2.0 学习笔记 (3)
2007-04-14 13:02
337 查看
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( );
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( );
相关文章推荐
- JSP2.0 学习笔记 (2)
- JSP2.0 学习笔记 (5)
- JSP2.0语法初步掌握(学习笔记)
- JSP2.0 学习笔记 (1)
- JSP2.0 学习笔记 (4)
- JSP2.0 tags自定义标签学习笔记
- JSP学习笔记(1) -- JSP 2.0基础
- JSP 2.0 技术书籍 学习笔记
- JSP 2.0 学习笔记 - 1
- JSP 2.0 学习笔记 - 2
- jsp学习笔记1
- Head First Servlet&Jsp 学习笔记(一) 一些基础知识
- JSP学习笔记之五
- JSP&Servlet学习笔记----第3章
- 个人学习笔记---JSP
- ASP.NET Core 2.0系列学习笔记-DI依赖注入
- JSP EL学习笔记
- java web jsp学习笔记--概述-常用语法,指令,动作元素,隐式对象,域对象
- maven2.0学习笔记
- JSP&Servlet学习笔记(3): 请求与响应