关于配置文件中的代码的解读

关于配置文件中的代码的解读

@Configuration
public class ImoocMallWebMVCConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/admin/**").addResourceLocations("classpath:/static/admin/");
        registry.addResourceHandler("/images/**")
                .addResourceLocations("file:" + Constant.FILE_UPLOAD_DIR);
        registry.addResourceHandler("swagger-ui.html").addResourceLocations(
                "classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**").addResourceLocations(
                "classpath:/META-INF/resources/webjars/");
    }
}

老师,配置文件的代码我一直没有搞的很明白,尤其是其中几个classpath后面的路径我没有搞清楚在哪个地方,就像/META-INF/resources/webjars/这个,还有registry.addResourceHandler("/admin/**").addResourceLocations("classpath:/static/admin/");这个是什么意思?映射?

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

同学你好,静态资源可以在application.properties配置,比如:

//在最末尾的file:${web.upload-path}中的file:表示是一个具体的硬盘路径,其他的使用classpath指的是系统环境变量
spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,file:${web.upload-path}

同学可以理解为这是两种不同的实现方式。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • mahsiaoko 提问者 #1
    好的 谢谢老师
    2020-10-09 15:12:27
好帮手慕小班 2020-10-09 10:53:23

同学你好,1、registry.addResourceHandler("/images/**").addResourceLocations("file:" + Constant.FILE_UPLOAD_DIR);

对于以images开头的请求,最后都会转达到addResourceLocations中的路径,比如请求/images/1.jpg,系统会到配置目录下找1.jpg。

registry.addResourceHandler("/admin/**").addResourceLocations("classpath:/static/admin/");同理,同学也可以参考上面的思路来理解。

    2、application.properties 是SpringBoot的配置文件,SpringBoot在启动的时候会自动的加载配置文件。而addResourceHandlers实现了对静态资源的配置,这二者并不一样。

http://img1.sycdn.imooc.com//climg/5f7fd08e0975d93e07510175.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 mahsiaoko #1
    静态资源配置不能在application.properties配置吗?
    2020-10-09 11:04:30
mahsiaoko 提问者 2020-10-08 23:12:59

还有,为什么不在application.properties中进行配置呢?我看application.properties中就对mybatis的mapper文件进行了配置

mybatis.mapper-locations=classpath:mappers/*.xml


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师