SpringMVC笔记(二)——默认配置
来源:互联网 发布:c语言程序举例 编辑:程序博客网 时间:2024/06/06 12:47
一个中心,三大组件
在上一篇中大致地说了一下SpringMVC请求处理的基本流程,其中,DispatcherServlet是前端控制中心,HandlerMapping负责返回包含对应的handler的HandlerExcutionChain,HandlerAdapter负责执行相应的handler,最后由ViewResolver来根据ModelAndView来渲染视图。
这里HandlerMapping、HandlerAdapter、ViewResolver就是SpringMVC的三大组件。
默认组件配置
在SpringMVC的org.springframework.web.servlet包下有一个DispatcherServlet.properties文件,它是“ Default implementation classes for DispatcherServlet’s strategy interfaces.”也即是配置了DispatcherServlet默认加载策略的一些组件的实现类。我们可以在此查看三大组件的默认配置。
# Default implementation classes for DispatcherServlet's strategy interfaces.# Used as fallback when no matching beans are found in the DispatcherServlet context.# Not meant to be customized by application developers.org.springframework.web.servlet.LocaleResolver=org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolverorg.springframework.web.servlet.ThemeResolver=org.springframework.web.servlet.theme.FixedThemeResolverorg.springframework.web.servlet.HandlerMapping=org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping,\ org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMappingorg.springframework.web.servlet.HandlerAdapter=org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter,\ org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter,\ org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapterorg.springframework.web.servlet.HandlerExceptionResolver=org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerExceptionResolver,\ org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver,\ org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolverorg.springframework.web.servlet.RequestToViewNameTranslator=org.springframework.web.servlet.view.DefaultRequestToViewNameTranslatororg.springframework.web.servlet.ViewResolver=org.springframework.web.servlet.view.InternalResourceViewResolverorg.springframework.web.servlet.FlashMapManager=org.springframework.web.servlet.support.SessionFlashMapManager
其中第三个指定了HandlerMapping的实现,其默认有两个实现即配置式和注解式;接着是HandlerAdapter,有三个实现,第一种要求Controller实现HttpRequestHandler接口,第二种则需要实现Controller接口,第三种是注解式;ViewResolver默认为InternalResourceViewResolver。需要注意,在SpringMVC-3.1之后,DefaultAnnotationHandlerMapping不再推荐使用,推荐使用RequestMappingHandlerMapping,可在配置文件中进行配置,相应的HandlerAdapter也需要改为RequestMappingHandlerAdapter。但是有这么一个配置,可以直接打开SpringMVC的注解驱动,免去上述配置的繁琐,它等同于向spring容器中注册了上述两个bean,如下: <mvc:annotation-driven/>
接下来是视图解析器的配置,InternalResourceViewResolver,在默认的情况下,我们的URL中需要包含“WEB-INF/页面路径”为前缀,但如果将其在容器中注册好,配置其前缀后缀,则访问时可以免去。
配置如下
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/jsp/"/> <property name="suffix" value=".jsp"/> </bean>
想起来要补充一个问题,在web.xml中我们需要给DispatcherServlet配置上下文,同时整个web应用需要在context-param中配置contextConfigLocation,也就是ContextLoaderListener的上下文(根上下文),这两者的关系上,后者是前者的父上下文。
- SpringMVC笔记(二)——默认配置
- SpringMvc(二)配置SpringMvc
- springMVC笔记(二)
- SpringMVC笔记(二)
- Springmvc笔记(二)
- springmvc学习笔记(二)路径配置与数据传递
- ssm配置文件(二)—springmvc.xml的配置
- SpringMVC学习笔记(二)——SpringMVC开发环境搭建
- springMVC 配置默认首页
- (二)Springmvc 配置(spring+hibernate+springmvc)
- SpringMvc学习笔记(二)SpringMvc控制器
- SpringMVC入门笔记(二)
- SpringMVC学习笔记(二)
- SpringMVC学习笔记(二)
- SpringMVC学习笔记(二)
- SpringMVC学习笔记(二)
- 探索SpringMVC(二)--DispatcherSevlet的默认依赖Beans
- 随笔笔记二——SpringMVC操作json数据
- 线程池的简介和使用
- spring IOC源码分析(1)
- SpringMVC的基本原理
- 使用jxl 实现对Excel的导入与导出
- opc
- SpringMVC笔记(二)——默认配置
- Scratch 游戏项目学习法 —— 接苹果(一)认识Scratch的界面
- STL的学习之(二)适配器使用
- HDU4737【尺取】
- 2017.9.27 Git学习笔记
- 生成多个git ssh密钥
- spring和springMVC父子容器的原理
- Android移动开发-音乐的示波器、均衡、重低音和音场的实现
- spring中如何直接注入session和request对像