基于代码的Servlet容器初始化1
2016-03-19 00:00
239 查看
在Servlet3.0以上的环境中,你可以以代码的方式或者用web.xml来配置一个Servlet容器。Spring MVC提供了一个WebApplicationInitializer接口来初始化任何的Servlet3容器。
AbstractDispatcherServletInitializer是WebApplicationInitializer的抽象类实现。它通过重写的方法来指定servlet mapping和DispatcherServlet配置文件的位置,从而让注册一个DispatcherServlet更加容易。
如果使用基于XML的Spring配置,则直接继承AbstractDispatcherServletInitializer。AbstractDispatcherServletInitializer还提供了便利的方式来添加Filter实例,并让它们自动映射到DispatcherServlet上(给每个Filter实例添加一个基于它们具体类型的名字)。
配置Spring MVC的两种方式——MVC Java Config和MVC XML namespace,它们提供相似的默认配置,目的是避免大多数应用都不得不做的相同的配置,同时也为配置Spring MVC提供了一个高水平架构,让人不需要对底层配置了解太多就能简单的开始。使用MVC Java Config或者MVC XML namespace取决于个人喜好,但是MVC Java Config能更容易看到底层配置,同时为那些被创建的Spring MVC beans提供高粒度的定制化。
MVC Java Config的方式是在@Configuration类上加上@EnableWebMvc注解,MVC XML namespace的方式是在XML配置文件中加上 <mvc:annotation-driven/>元素。这会注册包括一个RequestMappingHandlerMapping,一个RequestMappingHandlerAdapter和一个ExceptionHandlerExceptionResolver来支持注解的Controller方法使用诸如@RequestMapping,@ExceptionHandler等注解来处理请求。
AbstractDispatcherServletInitializer是WebApplicationInitializer的抽象类实现。它通过重写的方法来指定servlet mapping和DispatcherServlet配置文件的位置,从而让注册一个DispatcherServlet更加容易。
如果使用基于XML的Spring配置,则直接继承AbstractDispatcherServletInitializer。AbstractDispatcherServletInitializer还提供了便利的方式来添加Filter实例,并让它们自动映射到DispatcherServlet上(给每个Filter实例添加一个基于它们具体类型的名字)。
配置Spring MVC的两种方式——MVC Java Config和MVC XML namespace,它们提供相似的默认配置,目的是避免大多数应用都不得不做的相同的配置,同时也为配置Spring MVC提供了一个高水平架构,让人不需要对底层配置了解太多就能简单的开始。使用MVC Java Config或者MVC XML namespace取决于个人喜好,但是MVC Java Config能更容易看到底层配置,同时为那些被创建的Spring MVC beans提供高粒度的定制化。
MVC Java Config的方式是在@Configuration类上加上@EnableWebMvc注解,MVC XML namespace的方式是在XML配置文件中加上 <mvc:annotation-driven/>元素。这会注册包括一个RequestMappingHandlerMapping,一个RequestMappingHandlerAdapter和一个ExceptionHandlerExceptionResolver来支持注解的Controller方法使用诸如@RequestMapping,@ExceptionHandler等注解来处理请求。
相关文章推荐
- JAVA的Class源码详解
- Java反射机制
- java.lang.IncompatibleClassChangeError
- PHP Date()函数详细参数
- ThinkPHP IF标签用法笔记
- C++11 多线程 Mutex篇 (续)
- Java线程:概念与原理
- golang基础-防忘指北
- Java中回调机制
- python 基础二、列表【list】
- 让我们一起Go(八)
- 让我们一起Go(十)
- 让我们一起Go(七)
- 我是如何用Go语言搭建自己的博客的
- 使用C#得到操作系统,CLR版本和ServicePack信息
- 让我们一起Go(四)
- C语言中的异常处理
- 让我们一起Go(十二)
- 让我们一起Go(二)
- Go语言Windows程序设计(2)--第一个窗口程序