【SpringBoot3】整合SpringMVC


一、实现过程

springboot-part - GitHub

1.1 创建程序

模块:springboot-base-springmvc-03

1.2 引入依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.0.5</version>
    </parent>
    <groupId>com.wake</groupId>
    <artifactId>springboot-base-springmvc-03</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

</project>

1.3 启动类

@SpringBootConfiguration
public class Main {
    public static void main(String[] args) {
        SpringApplication.run(Main.class,args);
    }
}

1.4 Controller

@Controller
@ResponseBody
public class HelloController {
    @GetMapping("show")
    public String show(){
        return "Hello SpringBoot! MVC!";
    }
}

二、web相关配置

#相关的Web配置
server:
  servlet:
    context-path: /boot #设置项目根路径
  port: 80 #默认是8080
  • 测试
    1

Spring Boot Web应用程序配置 参数 - 官方文档

当涉及Spring Boot的Web应用程序配置时,以下是五个重要的配置参数:

  1. server.port: 指定应用程序的HTTP服务器端口号。默认情况下,Spring Boot使用8080作为默认端口。您可以通过在配置文件中设置server.port来更改端口号。
  2. server.servlet.context-path: 设置应用程序的上下文路径。这是应用程序在URL中的基本路径。默认情况下,上下文路径为空。您可以通过在配置文件中设置server.servlet.context-path属性来指定自定义的上下文路径。
  3. spring.mvc.view.prefixspring.mvc.view.suffix: 这两个属性用于配置视图解析器的前缀和后缀。视图解析器用于解析控制器返回的视图名称,并将其映射到实际的视图页面。spring.mvc.view.prefix定义视图的前缀,spring.mvc.view.suffix定义视图的后缀。
  4. spring.resources.static-locations: 配置静态资源的位置。静态资源可以是CSS、JavaScript、图像等。默认情况下,Spring Boot会将静态资源放在classpath:/static目录下。您可以通过在配置文件中设置spring.resources.static-locations属性来自定义静态资源的位置。
  5. spring.http.encoding.charsetspring.http.encoding.enabled: 这两个属性用于配置HTTP请求和响应的字符编码。spring.http.encoding.charset定义字符编码的名称(例如UTF-8),spring.http.encoding.enabled用于启用或禁用字符编码的自动配置。

三、静态资源处理

3.1 默认路径

默认的静态资源路径为:

· classpath:/META-INF/resources/

· classpath:/resources/

· classpath:/static/

· classpath:/public/

我们只要静态资源放在这些目录中任何一个,SpringMVC都会帮我们处理。
我们习惯会把静态资源放在classpath:/static/ 目录下。

3.2 覆盖路径

1

spring:
  web:
    resources:
      static-locations: classpath:/webapp #配置静态资源文件
      #一旦在这配置了,那么默认的文件夹就被覆盖了,全部失效,只能使用配置的默认文件夹
      #外部访问时,不需要加文件夹名的前缀,直接 /静态资源 即可

1

四、自定义拦截器(SpringMVC配置)

按正常的springmvc配置拦截器即可。

【SpringMVC】全局异常处理 拦截器 参数校验 扩展总结第四期

1

4.1 拦截器声明

/**
 * @Description: 拦截器
 */
public class MyInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println("request : " + request + "response : " + response + "handler : " + handler);
        return true;
    }
}

4.2 拦截器配置

/**
 * @Description: springmvc配置
 */
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    /**
     * /**  拦截当前目录及子目录下的所有路径 /user/**   /user/findAll  /user/order/findAll
     * /*   拦截当前目录下的以及子路径   /user/*     /user/findAll
     * @param registry
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new MyInterceptor()).addPathPatterns("/*");
    }
}

4.2 拦截器测试

1

相关推荐

  1. SpringBoot -- 整合SpringMVC

    2024-03-12 08:26:05       21 阅读
  2. SpringbootSpringmvc整合PageOffice配置

    2024-03-12 08:26:05       20 阅读
  3. SpringBoot3 整合Redis

    2024-03-12 08:26:05       33 阅读
  4. SpringBoot3整合MyBatisPlus

    2024-03-12 08:26:05       44 阅读
  5. springboot3整合swagger

    2024-03-12 08:26:05       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-12 08:26:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-12 08:26:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-12 08:26:05       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-12 08:26:05       20 阅读

热门阅读

  1. 云原生周刊:Helm Charts 深入探究 | 2024.3.11

    2024-03-12 08:26:05       46 阅读
  2. Docker创建openresty容器

    2024-03-12 08:26:05       23 阅读
  3. 阿里云服务 安装 Node.js

    2024-03-12 08:26:05       18 阅读
  4. 代码随想录三刷day26

    2024-03-12 08:26:05       21 阅读
  5. [IAGC] Kafka消费者组的负载均衡策略

    2024-03-12 08:26:05       23 阅读