Springboot框架——3.整合SpringMVC

1.修改端口号:

        在application.properties中添加如下配置即可:

server.port=8088

2.静态资源访问:

        首先打开ResourceProperties这个类的源码:

        将静态资源放到类中默认位置即可实现访问:

        

        http://localhost:8088/erth.jpg

 3.拦截器:

        先定义个拦截器:

package com.lxj.interceptor;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class LoginInterceptor implements HandlerInterceptor {

    private Logger logger=LoggerFactory.getLogger(LoginInterceptor.class);
    @Override
    public boolean preHandle(HttpServletRequest request,HttpServletResponse response,Object handler){
        logger.debug("执行前!");
        return true;
    }

    @Override
    public void postHandle(HttpServletRequest request,HttpServletResponse response,Object handler,ModelAndView modelAndView){
        logger.debug("执行后!");
    }

    @Override
    public void afterCompletion(HttpServletRequest request,HttpServletResponse response,Object handler,Exception ex){
        logger.debug("跳转后!");
    }

    /*
     * 这里注意日志级别,默认显示info以上级别,如果显示更低级别需要在配置文件中配置 logging.level.com.lxj=debug */
}

        然后通过实现WebMvcConfigure并添加@Configuration注解来实现自定义拦截器:

package com.lxj.config;

import com.lxj.interceptor.LoginInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class MvcConfig implements WebMvcConfigurer {
    @Bean  //将LoginInterceptor拦截器注入到spring容器中
    public LoginInterceptor loginInterceptor(){
        return new LoginInterceptor();
    }

    @Override //重写接口方法,添加自定义拦截器
    public void addInterceptors(InterceptorRegistry registry){
        // registry注册拦截器
        // addPathPatterns添加拦截路径:
        //  '?'  匹配任何单字符
        //  '*'  匹配0或者任意数量字符
        //  '**' 匹配0或者更多目录
        registry.addInterceptor(this.loginInterceptor()).addPathPatterns("/**");
    }

}

        重新访问可以发现已执行对应的拦截器:

        可以发现比之前的spring繁琐的配置文件方便多了!

相关推荐

  1. SpringBoot -- 整合SpringMVC

    2024-04-20 22:50:04       45 阅读
  2. SpringbootSpringmvc整合PageOffice配置

    2024-04-20 22:50:04       49 阅读
  3. SpringBoot整合Logback日志框架

    2024-04-20 22:50:04       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-20 22:50:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-20 22:50:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-20 22:50:04       82 阅读
  4. Python语言-面向对象

    2024-04-20 22:50:04       91 阅读

热门阅读

  1. 学习笔记2024/4/17

    2024-04-20 22:50:04       40 阅读
  2. Android笔记: mkdirs失败,不生效怎么办

    2024-04-20 22:50:04       58 阅读
  3. 计算机网络——应用层(4)DHCP和套接字编程

    2024-04-20 22:50:04       37 阅读
  4. Led驱动程序

    2024-04-20 22:50:04       31 阅读
  5. Springboot整合物联网IOT的MQTT协议

    2024-04-20 22:50:04       31 阅读
  6. 推荐算法之协同过滤

    2024-04-20 22:50:04       39 阅读
  7. python中的并发编程-进程、线程2

    2024-04-20 22:50:04       38 阅读
  8. 数据库-Redis(18)

    2024-04-20 22:50:04       33 阅读
  9. wsl + ubuntu + pycups + mqtt 远程打印入门

    2024-04-20 22:50:04       35 阅读
  10. docker-002常用命令

    2024-04-20 22:50:04       34 阅读