SpringMVC的九大组件

3 篇文章 0 订阅

1.MultipartResolver:用于处理文件上传请求,处理方法将普通的request包装成MultipartHttpServletRequest,后者可以通过直接调用getFile方法获取file。如果是多个文件,那么可以调用getFileMap得到一份file结构的map。

2.LocaleResolver:LocalResolver是个接口,用于从request中解析出Locale。用到LocaleResolver的地方有两处:一是ViewResolver解析视图的时候;二是使用到国际化资源或者主题的时候,国际化资源或者主题主要使用RequestContext的getMessage和getThemeMessage方法。

3.ThemeResolver:它是个接口。SpringMVC中一套主题对应一个properties文件,里面存放着和当前主题相关的所有资源,比如图片、css样式等。SpringMVC中和主题相关的类主要有ThemeResolver ThemeSource Theme。ThemeResolver的作用是从request解析出主题名,ThemeSource的作用是根据主题名找到具体的主题,Theme是ThemeSource找出的一个具体的主题。

4.HandlerMapping:是一个接口,内部只有一个方法和若干变量,它的作用是根据request找到对应的Handler。

5.HandlerAdapter:用来遍历所有的Adapter,找到可以处理当前请求的Handler。

6.HandlerExceptionResolver:是SpringMVC中专门用来处理异常的类。它主要负责:根据异常设置ModelAndView,然后交给render方法进行渲染。

7.RequestToViewNameTranslator:它是个接口。ViewResolver根据ViewName寻找view,但是有的Handler并没有设置view,也没有设置viewName,这时就需要从request中获取viewName,也就是RequestToViewNameTranslator的任务。它只有一个getViewName方法,用于从request中获取到viewName。RequestToViewNameTranslator在SpringMVC容器中只能配置一个,因此所有request到ViewName的转换规则都要遭一个Translator里面去实现。

8.ViewResolver:视图解析器用来将String类型的视图名(也叫逻辑视图)和locale解析为View类型的视图(物理视图)ViewResolver的使用需要注册到SpringMVC容器中,默认使用的是:org.springframework.web.servlet.view.InternalResourceViewResolver。

9.FlashMapManager:FlashMap主要是用在redirect中传递参数的。而FlashMapManager是用来管理FlashMap的。默认实现是 org.sptingframework.web.servlet.support.SessionFlashMapManager。它将参数保存在session中,其原理就是利用session中转站保存request中的参数,达到redirect来传递参数的。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值