springboot mvc配置原理+扩展springmvc(重点)
1.新建config目录
2.在config目录下创建自定义配置类
3.根据官方文档得到要有注解@Configuration并且继承类WebMvcConfigurer
扩展springmvc:我们慢慢脱离了原始的繁琐的xml配置,现在转向javaconfig配置
最后扩展-> springmvc配置原理源码:
注意点:springmvc的配置在springboot也要用到自动装配类WebMvcAutoConfiguration,
我们可以选择直接继承类WebMvcConfigurer并重写其中的方法
或者自己重新自定义thymeleaf也有自定义的视图解析器,但是如果需要自定义一些功能,可以写组件继承类WebMvcConfiguer
官方doc指出的问题:
这是因为:
我们diy的自动配置类也是需要通过WebMvcAutoConfiguration类将我们diy的自动配置类给springboot托管的,WebMvcAutoConfiguration类中有个静态内部类WebMvcAutoConfigurationAdapter,这个类导入了EnableWebMvcConfiguration.class
这个EnableWebMvcConfiguration类继承了DelegatingWebMvcConfiguration
然而在DelegatingWebMvcConfiguration类中我们发现它继承了 WebMvcConfigurationSupport类
而在我们最开始的要保证类失效,必须满足WebMvcAutoConfiguration类能正常生效,但是WebMvcAutoConfiguration类要求不存在WebMvcConfigurationSupport类,这与我们上面说的冲突了,所以官方要求不加@EnableWebMvc
=====================================分割线===================================================
springboot mvc配置原理+扩展springmvc(重点)的更多相关文章
- 这样讲 SpringBoot 自动配置原理,你应该能明白了吧
https://juejin.im/post/5ce5effb6fb9a07f0b039a14 前言 小伙伴们是否想起曾经被 SSM 整合支配的恐惧?相信很多小伙伴都是有过这样的经历的,一大堆配置问题 ...
- springboot自动配置原理以及手动实现配置类
springboot自动配置原理以及手动实现配置类 1.原理 spring有一个思想是"约定大于配置". 配置类自动配置可以帮助开发人员更加专注于业务逻辑开发,springboot ...
- MVC配置原理-源码
目录 举例 修改SpringBoot的默认配置 全面接管SpringMVC 参考链接 在进行项目编写前,我们还需要知道一个东西,就是SpringBoot对我们的SpringMVC还做了哪些配置,包括如 ...
- SpringBoot自动配置原理
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾前面Spring的文章(以学习的顺序排好): S ...
- SpringBoot系列二:SpringBoot自动配置原理
主程序类的注解 @SpringBootApplication 注解,它其实是个组合注解,源码如下: @Target({ElementType.TYPE}) @Retention(RetentionPo ...
- Spring Boot2.0+中,自定义配置类扩展springMVC的功能
在spring boot1.0+,我们可以使用WebMvcConfigurerAdapter来扩展springMVC的功能,其中自定义的拦截器并不会拦截静态资源(js.css等). @Configur ...
- SpringBoot实战之SpringBoot自动配置原理
SpringBoot 自动配置主要通过 @EnableAutoConfiguration, @Conditional, @EnableConfigurationProperties 或者 @Confi ...
- SpringBoot自动配置原理学习
介绍 构建Springboot项目时我们会创建一个启动类 @SpringBootApplication public class DemoApplication { public static voi ...
- 浅谈springboot自动配置原理
前言 springboot自动配置关键在于@SpringBootApplication注解,启动类之所以作为项目启动的入口,也是因为该注解,下面浅谈下这个注解的作用和实现原理 @SpringBootA ...
- 3. SpringBoot ——自动配置原理浅析
SpringBoot的功能之所以强大,离不开它的自动配置这一大特色.但估计很多人只是知其然而不知其所以然.下面本人对自动配置原理做一个分析: 在使用SpringBoot时我们通过引入不同的Starte ...
随机推荐
- 微软NewBing真是Niubility
这是本人2012年的拙作: 晨兮,闻风雨,后而雷鸣电闪.迟不可再三,若故无食.然何如耶?雨大风狂,单车奈何?公交卡空,恐时不予我也.不免叹也,天亦不予我! 而后出, ...
- 对于Java课上问题的探究和解答
问题一:子类和父类的继承关系(extends) 需要强调的是,子类自动声明继承父类中的public和protected的成员 其中,public成员,外界可以自由访问: private成员,外界无法进 ...
- 如何让excel不转换科学技术法
使用场景: 业务部门从系统导出数据给开发人员,打开后数字全部变为科学计数法 参考文章:https://www.zhihu.com/question/20096750
- University of Toronto Scarborough Campus December 7, 2017 CSC C73 Final Examination Instructor: Vassos Hadzilacos
https://app.yinxiang.com/shard/s59/res/8a11b895-19b5-4ca1-aefe-10b5985b8af9/CSCC73 Final 17.pdf 自己尝试 ...
- PicGo + Gitee(码云)实现markdown图床 (转载)
https://zhuanlan.zhihu.com/p/102594554 备忘录 我配置图床的时候参考的是这篇文章.我暂时使用的是这种方案. 因为考虑到有的文章要多平台发布,我建议你选择markd ...
- webgl 系列 —— 绘制猫
其他章节请看: webgl 系列 绘制猫 上文我们了解了如何绘制渐变彩色三角形,明白了图形装配.光栅化,以及片元着色器计算片元的颜色. 现在如果让你绘制如下一只猫.难道绘制很多三角形,然后指定它们的颜 ...
- FastDFS 使用流程
一.什么是FastDFS? FastDFS 是用 C 语言编写的一款开源的分布式文件系统,对文件进行管理,主要功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡 ...
- 简单部署halo博客
第一步,购买服务器,安装宝塔linux面板. 第二步,在宝塔linux面板的软件商店安装docker管理器 第三步,配置阿里云镜像加速 修改镜像加速 vim /etc/docker/daemon.js ...
- BEST 定理与矩阵树定理的证明
BEST 定理:计算有向图的欧拉回路数量 欧拉图 \(G\) 的欧拉回路个数为 \(T_s(G)\prod(out_i-1)!\),其中 \(T_s(G)\) 代表以 \(s\) 为根的内向树个数,\ ...
- Mybatis的整体理解
I有关于我的对ybatis的设想: 简单总结-下有关于我对wybat is的架构理解: 总体分为三个层面: 1.对外接口API 2.MapStatement数据处理 3.执行及其数据存储 两个主要的对 ...