SpringBoot 中静态首页默认位置可以放在哪里?

在Spring Boot应用中,静态资源(包括首页)可以放在特定的位置以便于自动加载和提供服务。Spring Boot会自动配置静态资源的路径和位置,默认情况下,静态资源应放在以下几个位置之一:

默认静态资源位置

  1. src/main/resources/static

    • 这是最常用的位置,Spring Boot会自动将此目录中的文件作为静态资源进行处理。你可以在这里放置静态文件,如HTML、CSS、JavaScript、图片等。
    • 首页文件(如index.html)放在此目录下的根位置。
    src
    └── main
        └── resources
            └── static
                └── index.html
    
  2. src/main/resources/public

    • 这是另一个用于存放静态资源的目录。Spring Boot也会将此目录中的文件作为静态资源处理。public目录的优先级与static目录相同。
    • 首页文件也可以放在此目录下的根位置。
    src
    └── main
        └── resources
            └── public
                └── index.html
    
  3. src/main/resources/resources

    • 这是一个较少用的位置,但Spring Boot也会处理这个目录中的静态资源。注意,此目录与staticpublic的处理方式相同。
    src
    └── main
        └── resources
            └── resources
                └── index.html
    
  4. src/main/resources/META-INF/resources

    • 这个位置通常用于提供静态资源给Java Servlet容器。如果你将静态资源放在这里,它们将被处理为Web应用的资源。
    src
    └── main
        └── resources
            └── META-INF
                └── resources
                    └── index.html
    

自定义静态资源位置

如果你需要自定义静态资源的存放位置,可以通过配置WebMvcConfigurer来指定额外的静态资源位置。例如:

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**")
                .addResourceLocations("classpath:/custom-static/");
    }
}

在这个配置中,/custom-static/目录下的静态资源将被暴露,并可以通过/路径访问。

访问首页

一旦你将index.html放置在上述任意一个默认位置,当你启动Spring Boot应用并访问根URL(/)时,Spring Boot会自动提供index.html文件作为首页。

通过这些默认位置和配置,你可以方便地管理和访问静态资源,满足不同的应用需求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伟主教

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值