springboot通过接口访问html,springboot不通过controller直接访问静态html

默认配置下,通过springboot搭建的web服务的资源中,可直接访问只有"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/"这几个目录下的,源码在类ResourceProperties中,如下:

public class ResourceProperties {

private static final String[] CLASSPATH_RESOURCE_LOCATIONS = new String[]{"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/"};

private String[] staticLocations;

private boolean addMappings;

private final ResourceProperties.Chain chain;

private final ResourceProperties.Cache cache;

public ResourceProperties() {

this.staticLocations = CLASSPATH_RESOURCE_LOCATIONS;

this.addMappings = true;

this.chain = new ResourceProperties.Chain();

this.cache = new ResourceProperties.Cache();

}

...

}

也可以在application.properties/.yml中配置spring.resources.static-locations来覆盖默认配置,例如(application.yml):

spring:

resources:

static-locations: classpath:/static/, classpath:/templates/

以下是配置静态资源目录的源码:

public void setStaticLocations(String[] staticLocations) {

this.staticLocations = this.appendSlashIfNecessary(staticLocations);

}

private String[] appendSlashIfNecessary(String[] staticLocations) {

String[] normalized = new String[staticLocations.length];

for(int i = 0; i < staticLocations.length; ++i) {

String location = staticLocations[i];

normalized[i] = location.endsWith("/") ? location : location + "/";

}

return normalized;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值