springboot访问后端静态资源404问题

 更新时间:2024年12月17日 10:46:19   作者:青艾_XY  
文章主要介绍了在Spring Boot中访问后台静态资源时可能出现的404错误及解决方法,并解释了MyBatis中驼峰命名转下划线的默认行为以及如何使用@Id和@GeneratedValue注解来标识主键属性

springboot访问后端静态资源404

在使用springboot访问后台静态资源时发生404错误

原因

在于前台配置的访问路径中可能包含了公共资源类的本级路径例如:

在访问后天资源时加了"public/",“static/”,但在实例访问时不需要加载该级路径,通过配 WebMvcConfigurer解决

@Configuration
public class CorsConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**").allowedOrigins("*")
                .allowedMethods("GET", "HEAD", "POST","PUT", "DELETE", "OPTIONS")
                .allowCredentials(true).maxAge(3600);
    }
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        //开放static,templates,public 目录 但是请求时候需要加上对应的前缀,比如我访问static下的资源/static/xxxx/xx.js
        registry.addResourceHandler("/static/**","/templates/**","/public/**")
                .addResourceLocations("classpath:/static/","classpath:/templates/","classpath:/public/");

    }

}

其次可能你书写的路径不属于默认访问路径

spring:
  mvc:
    static-path-pattern: /res/** #静态资源访问前缀为res

---
spring:
  resources:
    static-locations: [classpath:/res/] #在类路径的res文件夹下的静态资源才能被访问到

mybatis默认的驼峰命名转下划线

默认情况下,MyBatis 会将实体类的属性名转换为小写,并将驼峰命名法转换为下划线命名法,然后与数据库表的列名进行匹配。

如果您有一个名为 User 的实体类,它有一个名为 userName 的属性,那么 MyBatis 默认会将它映射为数据库表中的 user_name

@Id 是 MyBatis 中的一个注解,用于标识实体类中的属性作为表的主键。

在 MyBatis 中,如果您要使用 @Id 注解来标识主键属性,还需要使用 @GeneratedValue 注解来指定主键的生成方式。

public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String username;
    private String password;

    // 省略 getter 和 setter 方法
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 一文解析Java开发中高频使用的网络协议

    一文解析Java开发中高频使用的网络协议

    对于Java开发者而言,无需深入协议底层实现,但必须掌握常用协议的核心原理,应用场景和Java代码实操,才能高效开发网络通信相关功能,下面我们就来重点解析一下Java开发中高频使用的网络协议吧
    2026-04-04
  • Spring Boot使用Redisson实现滑动窗口限流的项目实践

    Spring Boot使用Redisson实现滑动窗口限流的项目实践

    滑动窗口限流是一种流量控制策略,用于控制在一定时间内的请求频率,本文主要介绍了Spring Boot使用Redisson实现滑动窗口限流的项目实践,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • SpringBoot前后端分离实现验证码操作

    SpringBoot前后端分离实现验证码操作

    验证码的功能是防止非法用户恶意去访问登录接口而设置的一个功能,今天我们就来看看在前后端分离的项目中,SpringBoot是如何提供服务的
    2022-05-05
  • 通过实例解析spring环绕通知原理及用法

    通过实例解析spring环绕通知原理及用法

    这篇文章主要介绍了通过实例解析spring环绕通知原理及用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • MyBatis参数处理与查询结果映射实例详解

    MyBatis参数处理与查询结果映射实例详解

    本文给大家介绍MyBatis参数处理与查询结果映射的问题,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2026-03-03
  • 浅谈java中字节与字符的区别

    浅谈java中字节与字符的区别

    这篇文章主要介绍了浅谈java中字节与字符的区别,字节是java中的基本数据类型,用来申明字节型的变量;字符是语义上的单位,它是有编码的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Spring集成Swagger常见错误及解决办法

    Spring集成Swagger常见错误及解决办法

    这篇文章主要介绍了Spring集成Swagger常见错误及解决办法,帮助大家更好的理解和学习使用Spring,感兴趣的朋友可以了解下
    2021-05-05
  • Java实现循环队列、栈实现队列、队列实现栈的方法

    Java实现循环队列、栈实现队列、队列实现栈的方法

    本文主要介绍了队列、循环队列、链式队列、使用栈实现队列以及使用队列实现栈的数据结构及其实现方法,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2026-03-03
  • 详解java自定义类

    详解java自定义类

    这篇文章主要介绍了java自定义类的概念以及用法,文中讲解非常详细,实例代码帮助大家更好的理解,感兴趣的朋友可以参考下
    2020-06-06
  • Nacos注册中心的部署与用法示例详解

    Nacos注册中心的部署与用法示例详解

    注册中心是微服务架构中的纽带,类似于“通讯录”,它记录了服务和服务地址的映射关系,本文通过示例代码给大家介绍Nacos注册中心的部署与用法,感兴趣的朋友跟随小编一起看看吧
    2022-02-02

最新评论