Spring Boot自动配置SpringMVC(二)
Spring Boot自动配置SpringMVC(一) - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)讲述了关于DispatcherServlet注册到诸如tomcat容器中的自动配置过程。那么Spring Boot究竟提供了关于Spring MVC的哪些配置,即我们可以直接使用的?
通过源码分析,依据之前的经验可以找到WebMvcAutoConfiguration的源码,其提供了如下配置
1、自动配置的ViewReResovler
  
  
  
  2、自动配置的静态资源(类路径和webjar)
3、自动配置Formatter和Converter
  
4、自动配置的HttpMessageConverters
   
  
5、静态首页的支持
  
当我们访问应用根目录http://localhost:8080时,会直接映射。
对于以上Spring Boot提供的默认配置,如果不符合需求的要求怎么解决呢?通过@Configuration和@EnableWebMvc注解可以实现完全由开发者接管控制的MVC配置。但是在实际生产中,Spring Boot提供的配置大部分是符合开发者需求的,对于额外需要添加的配置可以定义一个配置类并实现WebMvcConfigurer无需使用@EnableWebMvc注解。这样既可以保留Spring Boot提供的功能,亦可以扩展Mvc的功能。
  
Spring Boot自动配置SpringMVC(二)的更多相关文章
- Spring Boot自动配置SpringMVC(一)
		实际上在关于Spring Boot自动配置原理实战的文章Spring Boot自动配置实战 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中,可以看到我们使用到了@ReqeusMappi ... 
- Spring Boot自动配置原理与实践(二)
		前言 在之前的博文(Spring Boot自动配置原理与实践(一))中,已经介绍了Spring boot的自动配置的相关原理与概念,本篇主要是对自动配置的实践,即自定义Starter,对原理与概念加深 ... 
- Springboot 系列(三)Spring Boot 自动配置原理
		注意:本 Spring Boot 系列文章基于 Spring Boot 版本 v2.1.1.RELEASE 进行学习分析,版本不同可能会有细微差别. 前言 关于配置文件可以配置的内容,在 Spring ... 
- Spring Boot自动配置与Spring 条件化配置
		SpringBoot自动配置 SpringBoot的自动配置是一个运行时(应用程序启动时)的过程,简化开发时间,无需浪费时间讨论具体的Spring配置,只需考虑如何利用SpringBoot的自动配置即 ... 
- Spring Boot自动配置原理与实践(一)
		前言 Spring Boot众所周知是为了简化Spring的配置,省去XML的复杂化配置(虽然Spring官方推荐也使用Java配置)采用Java+Annotation方式配置.如下几个问题是我刚开始 ... 
- Spring Boot自动配置实战
		上篇讲述了Spring Boot自动配置的原理,本篇内容就是关于该核心原理的实际应用.需求即当某个类存在的时候,自动配置这个类的bean并且这个bean的属性可以通过application.prope ... 
- Spring Boot自动配置原理、实战
		Spring Boot自动配置原理 Spring Boot的自动配置注解是@EnableAutoConfiguration, 从上面的@Import的类可以找到下面自动加载自动配置的映射. org.s ... 
- Spring Boot自动配置
		Spring Boot自动配置原理 Spring Boot的自动配置注解是@EnableAutoConfiguration, 从上面的@Import的类可以找到下面自动加载自动配置的映射. org.s ... 
- Spring boot 自动配置自定义配置文件
		示例如下: 1. 新建 Maven 项目 properties 2. pom.xml <project xmlns="http://maven.apache.org/POM/4 ... 
随机推荐
- 【基因组学】maker的安装和注释
			本文默认读者有一定的生信基础,没有基础的可以阅读以前的笔记内容. maker作为比较受人认可的基因组注释软件,其流程较为清晰简单. 不知何故,我的conda无法安装maker,故而采用手动安装方式. ... 
- Educational Codeforces Round 117 (Rated for Div. 2)
			Educational Codeforces Round 117 (Rated for Div. 2) A. Distance https://codeforces.com/contest/1612/ ... 
- Underscore.js 1.3.3 源码分析收藏
			Underscore是一个提供许多函数编程功能的库,里面包含了你期待(在Prototype.js和Ruby中)的许多功能.但是没有扩展任何内置的Javascript对象,也就是说它没有扩展任何内置对象 ... 
- 在KALI以外的Linux上安装KALI上的工具(ubuntu,debian)
			添加KALI源 vim /etc/apt/sources.list 在sources.list中加入 deb http://http.kali.org/kali kali-rolling main c ... 
- Julia语言介绍
			官网:https://julialang.org/ 中文社区:https://cn.julialang.org/ Julia 是一个面向科学计算的高性能动态高级程序设计语言. 首先定位是通用编程语言, ... 
- leetcode 46. 全排列 及 47. 全排列 II
			46. 全排列 问题描述 给定一个没有重复数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3 ... 
- Cesium中文网——如何开发一款地图下载工具[一]
			Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ Cesium中文网的朋友们的其中一个主题是:自己独立开发一款地图 ... 
- C++Template(类模板二)
			namespace _myspace{ template<typename T, typename U> class TC { public: TC() { cout << & ... 
- gin中HTML渲染
			package main import ( "github.com/gin-gonic/gin" "net/http" ) func login(ctx *gi ... 
- Sping简介
			SSH:Struct2 + Spring +Hibernate SSM:SpringMVC + Spring + Mybatis 优点 1,Sping是一个开源的免费的框架(容器) 2,Spirng是 ... 
