package cn.xx.yy;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; @EnableWebMvc
@Configuration
public class WebMvcConfig implements WebMvcConfigurer { private static final String[] CLASSPATH_RESOURCE_LOCATIONS = new String[]{"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/static/dist/"}; /*
@Bean
public ServletWebServerFactory servletWebServerFactory(){
return new TomcatServletWebServerFactory();
}
*/ @Bean
public ServletRegistrationBean servletRegistrationBean() {
ServletRegistrationBean bean = new ServletRegistrationBean(new DispatcherServlet());
bean.setOrder(1);
List<String> urlPattern = new ArrayList<>();
urlPattern.add("/*");
bean.setName("dispatcher");
bean.setUrlMappings(urlPattern);
return bean;
} @Bean
public ServletListenerRegistrationBean bootstrapListenerBean(){
ServletListenerRegistrationBean bean = new ServletListenerRegistrationBean(new BootstrapListener());
return bean;
} @Bean
public ServletListenerRegistrationBean contextLoaderListenerBean(){
ServletListenerRegistrationBean bean = new ServletListenerRegistrationBean(new ContextLoaderListener());
return bean;
} @Bean
public FilterRegistrationBean encodingFilterBean() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(new CharacterEncodingFilter());
registration.setName("encoding");
Map<String, String> initParam = new HashMap<>();
initParam.put("encoding", "UTF-8");
registration.setInitParameters(initParam);
registration.addUrlPatterns("/*");
return registration;
} @Bean
public FilterRegistrationBean metricsFilterBean() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(new MetricsFilter());
registration.setName("metrics");
registration.addUrlPatterns("/*");
return registration;
} @Bean
public FilterRegistrationBean permissionFilterBean() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(new PermissionFilter());
registration.setName("permission");
registration.addUrlPatterns("/*");
return registration;
} @Bean
public FilterRegistrationBean seqIdServletFilterBean() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setFilter(new SeqIdServletFilter());
registration.setName("seqIdServlet");
registration.addUrlPatterns("/*");
return registration;
} /**
* 不加这个ok.htm没法显示
* @param configurer
*/
@Override
public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
configurer.favorPathExtension(false);
} /**
* 增加静态资源处理器
* @param registry
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler(new String[]{"/**"}).addResourceLocations(CLASSPATH_RESOURCE_LOCATIONS);
}
}

WebMvcConfig的更多相关文章

  1. spring boot 跨域访问处理

    问题场景:由于项目中使用到跨域访问,今天也得到高人指点,所以写出来分享给大家.可能是考虑到前后端分离,前端后端服务器不在一台机器上,出现这种跨域访问的情况.正常情况下本地访问是没有问题,但是遇到这种非 ...

  2. 使用Spring配合Junit进行单元测试的总结

    最近公司的项目和自己的项目中都用到了spring集成junit进行单元测试,总结一下几种基本的用法: 1.直接对spring中注入的bean进行测试(以DAO为例): 在测试类上添加@RunWith注 ...

  3. Spring Boot 之 RESRful API 权限控制

    摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “简单,踏实~ 读书写字放屁” 一.为何用RESTful API 1.1 RESTful是什么? ...

  4. springmvc配置文件-2

    项目3 WEB.xml: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi= ...

  5. springmvc配置文件-1

    项目1: web.xml <?xml version="1.0" encoding="UTF-8" standalone="no"?& ...

  6. SpringMVC 中的Interceptor 拦截器

    1.配置拦截器 在springMVC.xml配置文件增加: <mvc:interceptors>  <!-- 日志拦截器 -->  <mvc:interceptor> ...

  7. WebMvcConfigurerAdapter

    spring Boot 默认的处理方式就已经足够了,默认情况下Spring Boot 使用WebMvcAutoConfiguration中配置的各种属性. 建议使用Spring Boot 默认处理方式 ...

  8. 整合spring roo,maven,mybatis,spring-flex,blazeds,mysql

    1.      下载spring roo,设置环境变量ROO_HOME,和path,classpath. 使用CMD命令行找到工作区间,新建工程目录转到工程目录:mkdir ten-minutes $ ...

  9. spring boot 拦截器添加

    @Configuration public class WebMvcConfig extends WebMvcConfigurerAdapter { @Autowired private XxxInt ...

随机推荐

  1. 《Hadoop大数据技术开发实战》学习笔记(一)

    基于CentOS7系统 新建用户 1.使用"su-"命令切换到root用户,然后执行命令: adduser zonkidd 2.执行以下命令,设置用户zonkidd的密码: pas ...

  2. MySQL的注入总结

    0x01 MySQL 5.0以上和MySQL 5.0以下版本的区别 MySQL5.0以上版本存在一个叫information_schema的数据库,它存储着数据库的所有信息,其中保存着关于MySQL服 ...

  3. python安装第三方的包

    转载自:http://blog.csdn.net/xyqzki/article/details/38414433 第一种基本安装方法 1 下载第三方包,解压 2 在命令提示符里输入cmd,然后用cd进 ...

  4. css中盒子模型与box-sizing属性

    盒子模型 w3c标准:定义的width为 内容,有padding,border 都会使得 最终呈现的宽度为 定义的width+padding+border的总和,有margin另加 ie标准:定义的w ...

  5. Celery—分布式的异步任务处理系统

    Celery 1.什么是Clelery Celery是一个简单.灵活且可靠的,处理大量消息的分布式系统 专注于实时处理的异步任务队列 同时也支持任务调度 Celery架构 Celery的架构由三部分组 ...

  6. CNN-1: LeNet-5 卷积神经网络模型

    1.LeNet-5模型简介 LeNet-5 模型是 Yann LeCun 教授于 1998 年在论文 Gradient-based learning applied to document      ...

  7. IDEA使用 maven 搭建 SSM 框架

    文章目录 pom 文件的编写 项目结构 SSM 配置文件的编写 web.xml 的配置 总结 公司有个小的内部使用的软件,让开发,自己选择使用 SSM :因为之前自己学过,本以为一切水到渠成,但是好久 ...

  8. opencv实现人脸识别(一)opencv的相关知识了解

    这回进行了人脸识别的项目,对学习过程进行记录. 首先进行的就是一系列环境的配置,如 python3.7的安装, python的IDE  pycharm的安装,然后进行opencv库的安装,可以通过py ...

  9. ndarray笔记

    Numpy的介绍 1. Ndarray:N-dimensional array, N维数组 2. 一种由相同类型的元素组成的多维数组,元素数量是事先指定好的 例:建立Ndarray多维数组    nd ...

  10. EXTI中断开关点亮LED源码

    在KEY点亮LED源码的基础上 USER下新建EXIT文件夹,新建bsp_exit.c和bsp_exit.h,添加到工程中(魔术棒添加头文件所在文件夹) bsp_exit.h内容 #ifndef BS ...