我是靠谱客的博主 虚幻方盒,最近开发中收集的这篇文章主要介绍springboot扩展springmvc的配置springboot扩展springmvc,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

springboot扩展springmvc

springboot扩展springmvc的配置、都知道springboot的核心是自动装配、

如果要在不破坏springboot的springmvc自动装配、配置的情况下、我们可以自己写一个配置类去实现WebMvcConfigurer

在springboot的自动装配的情况下去扩展springmvc的新功能

@Configuration
public class MyMvcConfig implements WebMvcConfigurer {
  	//视图跳转、
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
      //浏览器访问location:8080/aa     ---> 他会找到名为index的视图名字的html
        registry.addViewController("/aa").setViewName("index");
    }
}

实现了WebMvcConfigurer 接口就可以在springboot中扩展springmvc的配置、

@EnableWebMvc注解说明

如果你在自定义的springmvc的MyMvcConfig配置类上加上了这个注解@EnableWebMvc 加上了这个注解后springboot对springmvc的自动装配全部失效、

为什么?

我们可以看一下这个@EnableWebMvc注解里面配置了什么

@EnableWebMvc注解中的内容
  |
@Import(DelegatingWebMvcConfiguration.class)
这个注解里面导入了一个类

DelegatingWebMvcConfiguration 类的内容
  |
public class DelegatingWebMvcConfiguration extends WebMvcConfigurationSupport
到这可以得出一个结论、说白了这个注解@EnableWebMvc就等于它、
WebMvcConfigurationSupport已经被spring托管了、简单来说就是
WebMvcConfigurationSupport类已经在容器中了。

在看一下WebMvcAutoConfiguration: 自动装配的类

WebMvcAutoConfiguration 类 、这个类就是自动装配配置的类这个了中会自动装配webmvc的全部配置
类中有一个注解
  |
@ConditionalOnMissingBean(WebMvcConfigurationSupport.class) : 这个注解是、个人理解的是:在springboot自动装配时spring的容器中没有这个
WebMvcConfigurationSupport类时这个WebMvcAutoConfiguration配置类生效、如
果在程序走到了这个自动装配的类时、发现容器中有这个类、此时这个
WebMvcAutoConfiguration自动装配的类失效。
简单来说就是判断容器中是否有这个类、’有‘、自动装配配置类失效、’没有‘、自动
装配配置类有效

在这里插入图片描述

最后得出一个结论、就是加上这个@EnableWebMvc注解它会将这个WebMvcConfigurationSupport类注入到容器中、等程序走到自动装配的类时、发现容器中有这个类、此时WebMvcAutoConfiguration类失效、springboot将不会在自动装配springmvc的配置了、由将加了@EnableWebMvc这这个注解的配置类全权配置

最后

以上就是虚幻方盒为你收集整理的springboot扩展springmvc的配置springboot扩展springmvc的全部内容,希望文章能够帮你解决springboot扩展springmvc的配置springboot扩展springmvc所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部