022 修改springmvc的默认配置

一 .概述

  在springboot之中,springmvc的默认配置都是配置好的,但是在我们使用的过程之中需要对默认的配置进行修改.

  本节,我们完成对springmvc的默认配置的修改,

  [1]了解springmvc的自动配置原理

  [2]修改springmvc的默认配置.



二 .springmvc的自动配置原理

  springboot在默认情况进行对springmvc进行了配置,我们首先看一下自动配置类.

  WebMvcAutoConfiguration在这个类之中帮助我们配置好了springmvc的基本配置类型.

[1]怎么添加视图解析器

  我们自己可以向容器之中添加一个视图解析器就可以了.

[2]静态资源等文件,也是通过这个类进行配置的.

[3]参数类型转换器

  比如日期格式化的内容就在application.yml文件之中进行配置.

如果我们想要配置一个自己的转换器,我们直接就在springboot之中自己配置一个就好了.

[4]HttpMessageConverter

  消息转换器.我们自己给容器之中添加一个HttpMessageConverter就好了.

我们发现,springmvc的定制现在变得很简单了,我们需要什么,就向ioc容器之中添加就好了.



三 .如何配置拦截器等组件

  在上面的自动配置之中,springmvc不可能帮助我们实现自动配置.

  因此,springboot帮助我们提供了一个自动适配器,我们通过这个适配器来完成我们自己的配置就可以了.

  我们只要向容器之中定制一个WebMvcConfigurerAdapter的类型组件.

  下面演示一个拦截器的配置.

 下面是我们自己定义一个拦截器对象 

public class PreInterceptor extends HandlerInterceptorAdapter {

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
            throws Exception {
        System.out.println("请求被我们拦截了!!");
        return true;
    }

}

下面我们将这个配置配置到我们的springboot之中.  

@Configuration
public class MVCConfig {

    @Bean
    public WebMvcConfigurerAdapter mvcConfig() {

        // 通过这个方法,我们就能像容器之中添加很多的mvc的组件
        return new WebMvcConfigurerAdapter() {

            // 添加我们自己的拦截器
            @Override
            public void addInterceptors(InterceptorRegistry registry) {
                // 添加一个拦截器对象
                registry.addInterceptor(new PreInterceptor())
                        // 拦截所有的请求
                        .addPathPatterns("/*");
            }

        };
    }
}

那么,现在我们的所有的请求都会被我们的拦截器拦截了.

原文地址:https://www.cnblogs.com/trekxu/p/9703864.html

时间: 2024-07-31 19:24:58

022 修改springmvc的默认配置的相关文章

修改JQM的默认配置属性

从本文开始,使用 jQuery Mobile 与 HTML5 开发 Web App 系列将会进入第三部分——jQuery Mobile 事件与方法,这其中将会利用之前所讲述的 jQuery Mobile 组件作为例子说明,因此 Kayo 建议如果你不熟悉 jQuery Mobile ,可以首先阅读前面两部分的文章.本文会介绍 jQuery Mobile 的默认配置以及一些基本的事件使用方法. 一.默认配置 jQuery Mobile 会有一些默认的设置,如之前介绍过的 Ajax 导航形式,可以选

提升PHP安全:8个必须修改的PHP默认配置

很明显,PHP+Mysql+Apache是很流行的web技术,这个组合功能强大,可扩展性强,还是免费的.然而,PHP的默认设置对已经上线的网站不是那么适合.下面通过修改默认的配置文件加强PHP的安全策略! 0x01:禁用远程url文件处理功能 像fopen的文件处理函数,接受文件的rul参数(例如:fopen('http://www.yoursite.com','r')).),这个功能可以很轻松的访问远程资源,然而,这是一个很重要的安全威胁,禁用这个功能来限制file function是个不错的

idea修改maven默认配置不生效

1.问题现象 我的idea版本是2019.2的,通过File->Other Setting->Setting for New Projects修改maven的默认配置后,新建项目maven默认配置不生效 2.解决 打开C:\Users\用户\.IntelliJIdea2019.2\config\options下的project.default.xml,添加一个component,保存,打开idea,File->Other Setting->Setting for New Proje

7、springmvc的自动配置

1.springmvc的自动配置 文档:https://docs.spring.io/spring-boot/docs/2.1.1.RELEASE/reference/htmlsingle/#boot-features-spring-mvc WebMvcAutoConfiguration.java Spring Boot 自动配置好了SpringMVC 以下是SpringBoot对SpringMVC的默认配置:(WebMvcAutoConfiguration) * Inclusion of Co

Android Launcher分析和修改1——Launcher默认界面配置(default_workspace)

最近工作都在修改Launcher,所以打算把分析源码和修改源码的过程记录下来,最近会写一些关于Launcher的分析和修改博文.因为我是修改4.0.3的Launcher,所以后面文章里面的Launcher都是基于Android4.0.3的Launcher2修改.Launcher源码比较多,而且里面应用了很多设计模式,要把它分析清楚要花不少精力,网上也有一些零碎的分析文章,不过关于修改的文章不多.所以打算写一些分析和修改Launcher结合的文章. 原创博文,转载请标明出处:http://www.

在Eclipse中创建maven和修改默认配置

进入到eclipse里面创建maven项目 然后修改eclipse里面默认的maven配置,在菜单栏选择window-Preferences 添加完后,选择自己安装的maven版本 然后切换到User Settings配置 到上面这一步基本配置完成啦 原文地址:https://www.cnblogs.com/unlasting/p/12192315.html

修改Android Studio新建工程时repositories的默认配置

个人博客 http://www.milovetingting.cn 修改Android Studio新建工程时repositories的默认配置 前言 由于众所周知的原因,Android Studio中连接google和jcenter的仓库时,会比较慢,较大机率会失败.为解决这个问题,可以设置仓库为阿里云的仓库: maven{ url 'https://maven.aliyun.com/repository/public/' } 或者设置为本地搭建的仓库,如: maven{ url 'http:

SpringMVC框架入门配置 IDEA下搭建Maven项目

,初衷:本人初学SpringMVC的时候遇到各种稀奇古怪的问题,网上各种技术论坛上的帖子又参差不齐,难以一步到位达到配置好的效果,这里我将我配置的总结写到这里供大家初学SpringMVC的同僚们共同学习使用! 关于SpringMVC的介绍我就不在此赘述了,想必每一个配置Spring的人都已经或多或少了解过一些SpringMVC的基础知识,可能有的人用的myeclipse或者eclipse进行项目的搭建,我会告诉你这里步骤是很相似的,在myeclipse里面需要建立web项目,然后加入Spring

SpringMVC+springSecurity+flexPaper 配置--类似百度文库在线预览

背景:现在项目需要做一个类似百度文库的在线预览功能,在网上找了下很多人推荐使用FlexPaper,所以今天尝试学习了FlexPaper顺便集成到现有的框架中 由于网上目前的说的都不是很详细,所以现在记录在此,希望对需要的人有所帮助 准备:1. FlexPaper_2.2.4.zip 下载地址:http://flexpaper.devaldi.com/download/             2.swftools 下载地址:http://www.swftools.org/download.htm