zoukankan      html  css  js  c++  java
  • SpringBoot之静态资源处理

    静态资源处理(springboot静态资源映射规则)

       1、第一种方式:spring支持以jar包的方式引入静态资源(webjars)以jQuery为例,导入依赖    网址:https://www.webjars.org/

     1 @Override
     2         public void addResourceHandlers(ResourceHandlerRegistry registry) {
     3             if (!this.resourceProperties.isAddMappings()) {
     4                 logger.debug("Default resource handling disabled");
     5                 return;
     6             }
     7             Duration cachePeriod = this.resourceProperties.getCache().getPeriod();
     8             CacheControl cacheControl = this.resourceProperties.getCache().getCachecontrol().toHttpCacheControl();
     9             if (!registry.hasMappingForPattern("/webjars/**")) {
    10                 customizeResourceHandlerRegistration(registry.addResourceHandler("/webjars/**")
    11                         .addResourceLocations("classpath:/META-INF/resources/webjars/")
    12                         .setCachePeriod(getSeconds(cachePeriod)).setCacheControl(cacheControl));
    13             }
    14             String staticPathPattern = this.mvcProperties.getStaticPathPattern();
    15             if (!registry.hasMappingForPattern(staticPathPattern)) {
    16                 customizeResourceHandlerRegistration(registry.addResourceHandler(staticPathPattern)
    17                         .addResourceLocations(getResourceLocations(this.resourceProperties.getStaticLocations()))
    18                         .setCachePeriod(getSeconds(cachePeriod)).setCacheControl(cacheControl));
    19             }
    20         }

        所有的/webjars/**,都去 /META-INF/resources/webjars/ 这里面找资源 

    1 <!--引入jquery-webjar-->
    2         <dependency>
    3             <groupId>org.webjars</groupId>
    4             <artifactId>jquery</artifactId>
    5             <version>3.5.1</version>
    6         </dependency>

        然后我们可以访问jquery的静态资源,找到jar包路径   访问路径:localhost:8080/webjars/jquery/3.5.1/jquery.js

      2)、第二种方式:  /** 访问当前项目任何资源 (静态资源文件夹)

    1 "classpath:/META-INF/resources/",
    2 "classpath:/resources/", 
    3 "classpath:/static/", 
    4 "classpath:/public/"
    5 "/" 当前项目的根路径

      3)、欢迎页;静态资源文件夹下的所有index.html页面;被"/**"映射

        即:localhost:8080/  找index.html页面

      4)、所有的 **/favicon.ico 都在静态资源文件下找

        注意:在springboot2.x版本以前  直接将favicon.ico放到资源文件夹下即可

              在springboot2.x版本以后,需要在每个页面中手动添加

        1)、添加到 thymeleaf模板引擎

    <link rel="icon" th:href="@{/favicon.ico}" type="image/x-icon"/>
    <link rel="bookmark" th:href="@{/favicon.ico}" type="image/x-icon"/>

        2)、添加到别的模板隐情

    1 <link rel="icon" href="/Favicon.ico" type="image/x-icon"/>
    3 <link rel="bookmark" href="/Favicon.ico" type="image/x-icon"/>
  • 相关阅读:
    如何只通过Sandboxed Solution启动一个定时执行的操作
    创建与SharePoint 2010风格一致的下拉菜单 (续) 整合Feature Custom Action框架
    创建与SharePoint 2010风格一致的下拉菜单
    《SharePoint 2010 应用程序开发指南》第二章预览
    SharePoint 2013 App 开发 (1) 什么是SharePoint App?
    使用Jscex增强SharePoint 2010 JavaScript Client Object Model (JSOM)
    搜索范围的管理
    SharePoint 2010 服务应用程序(Service Application)架构(1)
    SharePoint 2010 服务应用程序(Service Application)架构(2)
    SharePoint 2013 App 开发 (2) 建立开发环境
  • 原文地址:https://www.cnblogs.com/lxy-java/p/12992972.html
Copyright © 2011-2022 走看看