第2章web课件10 servlet3新特性_第1页
第2章web课件10 servlet3新特性_第2页
第2章web课件10 servlet3新特性_第3页
第2章web课件10 servlet3新特性_第4页
第2章web课件10 servlet3新特性_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Servlet3新特性讲师:李刚本次要点JSP2.0简介JSP定义表达式语言简化的自定义标签TagFile支持Servlet3.0的Annotation与以前的API相比,Servlet3.0允许不在web.xml文件中配置组件,而是采用Annotation来配置组件。配置组件的Annotation有如下几个:@WebServlet:用于修饰一个Servlet类,用于部署Servlet类。@WebInitParam:用于与@WebServlet或@WebFilter一起使用,为Servlet、Filter配置参数。@WebListener:用于修饰Listener类,用于部署Listener类。@WebFilter:用于修饰Filter类,用于部署Filter类。@MultipartConfig:用于修饰Servlet,指定该Servlet将会负责处理multipart/form-data类型的请求(主要用于文件上传)。@ServletSecurity:这是一个与JAAS有关的Annotation,修饰Servlet指定该Servlet的安全与授权控制。@HttpConstraint:用于与@ServletSecurity一起使用,用于指定该Servlet的安全与授权控制。@HttpMethodConstraint:用于与@ServletSecurity一起使用,用于指定该Servlet的安全与授权控制。Servlet3.0的Web模块支持Servlet3.0为模块化开发提供了良好的支持,Servlet3.0规范不再要求所有Web组件(如Servlet、Listener、Filter等)都部署在web.xml文件中,而是允许采用“Web模块”来部署、管理它们。一个Web模块通常对应于一个JAR包,这个JAR包有如下文件结构:<webModule>.jar——这是Web模块的JAR包,可以改变|-META-INF| |-web-fragment.xml|-Web模块所用的类文件、资源文件等。Web模块的优势Servlet3.0的Web模块支持为模块化开发、框架使用提供了巨大的方便,例如需要在Web应用中使用Web框架,这就只要将该框架的JAR包复制到Web应用中即可。因为这个JAR包的META-INF目录下可以通过web-fragment.xml文件来配置该框架所需的Servlet、Listener、Filter等,从而避免修改Web应用的web.xml文件。Web模块支持对于模块化开发也有很大的帮助,开发者可以将不同模块的Web组件部署在不同的web-fragment.xml文件中,从而避免所有模块的配置、部署信息都写在web.xml文件中,这对以后的升级、维护将更加方便。Servlet3.0提供的异步处理Servlet3.0的异步处理是通过AsyncContext类来处理的,Servlet可通过ServletRequest的如下两个方法开启异步调用、创建AsyncContext对象:AsyncContextstartAsync()AsyncContextstartAsync(ServletRequest,ServletResponse)开启异步调用对于希望启用异步调用的Servlet而言,开发者必须显式指定开启异步调用,为Servlet开启异步调用的有两种方式:为@WebServlet指定asyncSupported=true。在web.xml文件的<servlet.../>元素中增加<async-supported.../>子元素。异步监听器当Servlet启用异步调用的线程之后,该线程的执行过程对开发者是透明的。但在有些情况下,开发者需要了解该异步线程的执行细节,并针对特定的执行结果进行针对性的处理,这可借助于Servlet3.0提供的异步监听器来实现。异步监听器需要实现AsyncListener接口,实现该接口的监听器类需要实现如下4个方法:onStartAsync(AsyncEventevent):当异步调用开始时触发该方法。onComplete(AsyncEventevent):当异步调用完成时触发该方法。onError(AsyncEventevent):当异步调用出错时触发该方法。onTimeout(AsyncEventevent):当异步调用超时时触发该方法。改进的ServletAPIServlet3.0还有改变是改进了部分API,这种改进很好地简化了JavaWeb开发。其中两个较大的改进是:HttpServletRequest增加了对文件上传的支持。ServletContext允许通过编程的方式动态注册Servlet、Filter。HttpServletRequest提供了如下两个方法来处理文件上传:PartgetPart(Stringname):根据名称来获取文件上传域。Collection<Part>getParts():获取所有的文件上传域。动态注册Web组件ServletContext则提供了如下方法来动态的注册Servet、Filter,并允许动态设置Web应用的初始化参数:多个重载的addServlet:动态地注册Servlet。多

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论