springboot MVC拓展配置

最近几天在学习springboot的自动配置,Spring Boot为Spring MVC提供了自动配置,可与大多数应用程序一起很好地工作。
自动配置在Spring的默认值之上添加了以下功能:

  • 包含ContentNegotiatingViewResolver和BeanNameViewResolver。
  • 支持服务静态资源,包括对WebJars的支持
  • 自动注册Converter,GenericConverter和Formatter类。
  • 支持HttpMessageConverters
  • 自动注册MessageCodesResolver
  • 静态index.html支持
  • 自动使用ConfigurableWebBindingInitializerbean

如果要保留这些Spring Boot MVC定制并进行更多的MVC定制(拦截器,格式化程序,视图控制器和其他功能),则可以添加自己@Configuration的type类,WebMvcConfigurer但不添加 @EnableWebMvc。我们在项目中演示一下。
第一步:在项目中新建config包,新建一个MyMVCConfig的类,添加@Configuration的注解;
第二步:全文搜索WebMvcConfigurer,进入发现这是一个接口,在MyMVCConfig的类实现并重写内部方法;
在这里插入图片描述
第三步:接管视图解析器ContentNegotiatingViewResolver,进入到类内部resolveViewName方法,看到默认的视图解析器做的工作,第一步先获取所有的候选视图,然后从中选择最优的视图,我们先自己写一个新的视图来验证一下。
在这里插入图片描述
在这里插入图片描述
由于所有的请求过来先走dispatcherservlet,进入到内部的类找到doDispatch方法,断点测试一下自定义的视图解析器是否生效。
在这里插入图片描述
第四步:扩展springmvc
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值