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. Net中实现HTML生成图片或PDF

    Net中实现HTML生成图片或PDF的几种方式 前段时间由于项目上的需求,要在.Net平台下实现把HTML内容生成图片或PDF文件的功能,特意在网上研究了几种方案,这里记录一下以备日后再次使用.当时想 ...

  2. python邮件发送自动化测试报告

    话不多说直接贴代码 # encoding: utf-8import smtplib #发送邮件模块from email.mime.text import MIMEText #邮件内容from emai ...

  3. rest_framework之三种分页器使用方法

      from rest_framework.pagination import PageNumberPagination,LimitOffsetPagination,CursorPagination ...

  4. js修改css属性值

    推荐用dom.style.setProperty('属性','属性值'); 例如: $("#id")[0].style.setProperty('margin-top','1px' ...

  5. 1、5 写注册的后台并写前台html&密码加密&id 随机

    1 public void save(Student student) { // TODO Auto-generated method stub student.setSid(UUID.randomU ...

  6. v-CheckBox

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  7. Mac配置虚拟环境Virtualenv,安装Python科学计算包详解

    参考: https://www.jianshu.com/p/51140800e8b4 安装 virtualenvwrapper Virtaulenvwrapper是virtualenv的扩展包,可以更 ...

  8. Redis SETNX实现分布式锁

    1.某进程1执行 SETNX lock 以尝试获取锁 2.由于某进程2已获得了锁,所以进程1执行 SETNX lock 返回0,即获取锁失败 3.进程1执行 GET lock 来检测锁是否已超时,如果 ...

  9. Python连接ORACLE操作

    一.准备工作 1.安装cx_Oracle ttps://pypi.python.org/pypi下查找cx_Oracle并下载 执行安装命令 pip install cx_Oracle-6.0rc1- ...

  10. MySQL Sakila示例数据库

    Table of Contents 1 Preface and Legal Notices 2 Introduction 3 History 4 Installation 5 Structure    ...