WebMvcConfigurer接口详解及使用方式(Spring-WebMvc)

简介

如下图所示WebMvcConfigurer是spring-webmvc jar包下的一个接口,spring-webmvc jar包又来源于spring-boot-starter-web,所以要使用WebMvcConfigurer要引入spring-boot-starter-web依赖。WebMvcConfigurer接口提供了常用的web应用拦截方法。通过实现该接口可以实现添加自定义拦截器,跨域设置、页面跳转和静态资源访问等功能。

WebMvcConfigurer所在位置

引入项目依赖

<!-- SpringBoot Web容器 -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>x.x.xx</version>
</dependency>

自定义配置类并实现WebMvcConfigurer接口

@Configuration
public class MvcConfigurer implements WebMvcConfigurer {/*** 此处可添加自定义的拦截器* PS:自定义的拦截器要实现HandlerInterceptor接口*/@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(new AuthenticationInterceptor());}/*** 此处可以进行跨域设置* PS:同源策略是一个重要的安全策略,它用于限制一个源的文档或者它加载的脚本如何能与另一个源的资源进行交互*/@Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**").allowedOrigins("http://example.com").allowedMethods("GET", "POST", "PUT", "DELETE").allowedHeaders("*");}/*** 将控制器映射到特定的视图名称*/@Overridepublic void addViewControllers(ViewControllerRegistry registry){registry.addViewController("/").setViewName("forward:" + indexUrl);}/*** 此处用于配置静态资源路径,通常用于展示图片、样式表、JavaScript等文件。*/@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry){/** 本地文件上传路径 */registry.addResourceHandler(Constants.RESOURCE_PREFIX + "/**").addResourceLocations("file:" + FileLocationConfig.getProfile() + "/");}// 还可以实现其他方法...	
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/232609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Lazada物流禁运规则是什么?Lazada物流禁运商品有哪些?——站斧浏览器

Lazada物流禁运规则 Lazada平台对物流禁运商品的规则主要有以下几个方面&#xff1a; 1.卖家在上传商品时需要填写正确的商品信息&#xff0c;包括商品名称、描述、图片等。如果卖家填写不准确或者存在虚假信息&#xff0c;将会导致物流禁运商品的误判。 2.卖家需要遵守平台…

HQX System Performance Troubleshooting Overview

Ensure your gvm config contain below ftrace configs: #导出config配置 adb root adb shell proc/config.gz#确认下列ftrace config是否开启&#xff0c;如果没有开启在代码中进行配置 CONFIG_TASKS_TRACE_RCUy CONFIG_TRACEPOINTSy CONFIG_STACKTRACE_SUPPORTy CONFIG_TRAC…

H5网页流媒体播放器EasyPlayer播放H.265录像时,无法倍速回放是什么原因?

流媒体播放器EasyPlayer是我们流媒体组件系列中关注度较高的产品&#xff0c;经过多年的发展和迭代&#xff0c;目前已经有多个应用版本&#xff0c;包括RTSP版、RTMP版、Pro版&#xff0c;以及js版&#xff0c;其中js版本作为网页播放器&#xff0c;受到了用户的广泛使用。在功…

Python自适应调整Excel的列宽度

使用python调整列宽度的逻辑需要自己写&#xff0c;这里是参考参考文章中的内容&#xff0c;使用openpyxl打开文件后&#xff0c;将列宽度根据列的内容进行指定&#xff0c;使用max(列的内容宽度 2) * 1.2来指定列宽 示例程序 假设有一个测试.xlsx的文件&#xff0c;使用如下…

Mac M系列安装配置VSCode

一、终端输入 安装command line tools xcode-select --install 这里是已经下载了 如果没有下载点击安装&#xff0c;等待安装完成即可 检验是否安装成功&#xff0c;终端输入 clang 如图所示是代表之前的command line tools安装 是安装成功的&#xff08;Clang会不断更新…

spring boot版本升级遇到的一些问题

背景&#xff1a;由于项目需求&#xff0c;需要将nacos 1.4.6版本升级到2.x版本&#xff0c;由此引发的springboot、springcloud、springcloud Alibaba一系列版本变更。 旧版本分别为&#xff1a; Spring Boot 2.3.5.RELEASE Spring Cloud Hoxton.SR9 Spring Cloud Alibaba 2.2…

数据库性能测试报告总结模板

1计划概述 目的&#xff1a;找出系统潜在的性能缺陷 目标&#xff1a;从安全&#xff0c;可靠&#xff0c;稳定的角度出发&#xff0c;找出性能缺陷&#xff0c;并且找出系统最佳承受并发用户数&#xff0c;以及并发用户数下长时间运行的负载情况&#xff0c;如要并发100用户&a…

虚拟化之问答

Q: Type 1 与 Type 2 虚拟机监控程序有何区别&#xff1f; A: Type 2 虚拟机监控程序运行在主机操作系统之上&#xff0c;而 Type 1 虚拟机监控程序则没有主机操作系统。 Q: Secure 状态和 Non-secure 状态分别有多少个 IPA 空间&#xff1f; A: Secure 状态有两个 IPA 空间…

集合工具类Collections

概述 java.utils.Collections:是集合工具类 作用&#xff1a;Collections并不属于集合&#xff0c;是用来操作集合的工具类。 Collections常用的API Collections排序相关API 使用范围&#xff1a;只能对于List集合的排序。 排序方式1&#xff1a; 注意&#xff1a;本方式…

SecureCRT for Mac/win强大安全的终端SSH工具,SecureCRT助您网络连接无忧

在当今数字化时代&#xff0c;网络连接已成为生活和工作中不可或缺的一部分。而对于需要进行远程访问和管理的用户来说&#xff0c;一个稳定、安全的终端SSH工具是至关重要的。SecureCRT作为一款强大的终端SSH工具&#xff0c;为用户提供了安全、高效的远程连接解决方案。 首先…

Linux 文本处理

在处理大文本时&#xff0c;使用VI打开会非常慢&#xff0c;通常只需要查看其中的少量信息&#xff0c;比如查看前多少行、或者文件尾多少行。这种情况下可以使用head和tail命令&#xff0c;这种方式查看起来会非常快。 查看文件1.txt 前1000行&#xff1a; head -n 1000 1.t…

【兔子王赠书第13期】AI绘画实战:Midjourney从新手到高手

文章目录 写在前面AI绘画推荐图书一本书读懂AI绘画关键点内容简介作者简介 推荐理由粉丝福利写在后面 写在前面 如今AI技术已经进入了我们的日常学习生活中&#xff0c;如何用一本书轻松玩转AI绘画&#xff0c;领略无限艺术可能呢&#xff1f; AI绘画 AI绘画是指利用人工智能…

紫光FPGA学习之常见报错

紫光pango design suite报错&#xff1a; 一、4005: [D:/**/rtl/burstORsingle.v(line number: 47)] Logic for ddr_head_addr_rr does not match a standard flip-flop. 看来看去都没有发现这个定义没有问题呀&#xff0c;检查发现&#xff1a; 原来代码&#xff1a; always…

会议剪影 | 思腾合力受邀出席首届CCF数字医学学术年会

首届CCF数字医学学术年会&#xff08;CCF Digital Medicine Symposium&#xff0c;DMS&#xff09;于2023年12月15日-17日在苏州CCF业务总部召开。这次会议的成功召开&#xff0c;标志着数字医学领域进入了一个新的时代&#xff0c;计算机技术和人工智能在医学领域的应用和发展…

Wireshark高级网络安全分析

第一章&#xff1a;Wireshark基础及捕获技巧 1.1 Wireshark基础知识回顾 1.2 高级捕获技巧&#xff1a;过滤器和捕获选项 1.3 Wireshark与其他抓包工具的比较 第二章&#xff1a;网络协议分析 2.1 网络协议分析&#xff1a;TCP、UDP、ICMP等 2.2 高级协议分析&#xff1a;HTTP…

【Docker离线安装与注册服务】

Docker离线安装与注册服务 一、离线安装1. Docker2. Docker-compose3. docker卸载4. 注册docker服务 ​ 一、离线安装 1. Docker Docker 官网离线安装文档&#xff1a;Install Docker Engine from binaries 整理步骤如下&#xff1a; 1.去官网下载 docker 安装包&#xff0c;…

Appcelerator打包ipa有哪些优势

大家好&#xff0c;我是咕噜-凯撒&#xff0c;我们得先知道Appcelerator是啥&#xff0c;Appcelerator&#xff08;现在更名为Axway Titanium&#xff09;是一个跨平台的移动应用开发框架通过提供一种简化和加速移动应用开发的方式帮助你构建高质量的跨平台应用程序。那使用App…

复旦团队提出思维交流框架EoT,由CoT到EoT,可跨模型通信,表现更出色

大型语言模型&#xff08;LLM&#xff09;通过利用庞大的训练语料和强大的计算资源&#xff0c;在众多 NLP 任务中表现卓越。然而&#xff0c;在理解和进行推理方面&#xff0c;这些模型仍显得相对薄弱&#xff0c;仅依靠增加模型的大小无法解决这一问题。 然而&#xff0c;现…

如何使用 TailwindCSS 画一条0.5px的线条

背景 在移动端项目&#xff0c;一般为了让线条看起来更细、更锐利&#xff0c;此时使用0.5px的线条是非常合适的。那么如何使用TailwindCSS画一条0.5px的线条呢&#xff1f; 在实现这个需求的时候&#xff0c;首先去TailwindCSS官网查了一下border有没有对应的内置工具类&…

LeetCode 141. 环形链表

给你一个链表的头节点 head &#xff0c;判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置&#xff08;…