Spring Boot开发web项目之静态资源放哪里?

先了解自动装配autoconfiguration

这些内容是spring boot天然集成好的框架

找到WebMvcAutoConfigration.java

方式1:webjars

【1】一个神奇的网站webjars.org

【2】复制jquery任意版本的maven坐标粘贴到web项目中

【3】在哪儿看这个jquery是否导入成功

【4】启动项目之后,如何通过http请求访问这个jquery.js呢?

方式2:/**

【1】静态资源存放路径

【2】说明四个路径的位置

【3】请求路径

【4】新建四个不同的html静态文件放在四个目录下,测试访问

配置web项目的首页

【1】找到请求路径和页面存放位置

【2】首页的名字叫什么,后缀叫什么?

【3】结论,首页只要取名叫index.html放到上面4个目录任意一个即可

为了保证安全可以修改默认的目录

properties文件修改配置

先了解自动装配autoconfiguration

这些内容是spring boot天然集成好的框架

找到WebMvcAutoConfigration.java

方式1:webjars

webjars:前端的静态资源可以是jar包的方式

@Override

public void addResourceHandlers(ResourceHandlerRegistry registry) {

if (!this.resourceProperties.isAddMappings()) {

logger.debug("Default resource handling disabled");

return;

}

Duration cachePeriod = this.resourceProperties.getCache().getPeriod();

CacheControl cacheControl = this.resourceProperties.getCache().getCachecontrol().toHttpCacheControl();

if (!registry.hasMappingForPattern("/webjars/**")) {

customizeResourceHandlerRegistration(registry.addResourceHandler("/webjars/**")

.addResourceLocations("classpath:/META-INF/resources/webjars/")

.setCachePeriod(getSeconds(cachePeriod)).setCacheControl(cacheControl));

}

String staticPathPattern = this.mvcProperties.getStaticPathPattern();

if (!registry.hasMappingForPattern(staticPathPattern)) {

customizeResourceHandlerRegistration(registry.addResourceHandler(staticPathPattern)

.addResourceLocations(getResourceLocations(this.resourceProperties.getStaticLocations()))

.setCachePeriod(getSeconds(cachePeriod)).setCacheControl(cacheControl));

}

}

【1】一个神奇的网站webjars.org

传送到webjars.org

【2】复制jquery任意版本的maven坐标粘贴到web项目中

【3】在哪儿看这个jquery是否导入成功

点开jar包就能看见

【4】启动项目之后,如何通过http请求访问这个jquery.js呢?

这里的pathPattern:表示访问路径叫/webjars/

addResourceLocations(“classpath:/META-INF/resources/webjars/”)表示资源路径,jquery.js好像就在这个路径下

http://localhost:8080/webjars/jquery/1.12.1/jquery.js,访问成功

方式2:/**

【1】静态资源存放路径

classpath:/META-INF/resources/

classpath:/resources/

classpath:/static/

classpath:/public/

这里有4个路径

【2】说明四个路径的位置

【3】请求路径

语法:http://localhost:8080/html文件的名字即可

http://localhost:8080/meta_inf_resources.html

http://localhost:8080/public.html

http://localhost:8080/resources.html

http://localhost:8080/static.html

【4】新建四个不同的html静态文件放在四个目录下,测试访问

访问/META-INF/resources目录静态资源

访问/public目录静态资源

访问/resources目录静态资源

访问/static/目录静态资源

配置web项目的首页

【1】找到请求路径和页面存放位置

请求路径还是:/**

页面存放位置还是上面的4个位置

classpath:/META-INF/resources/

classpath:/resources/

classpath:/static/

classpath:/public/

【2】首页的名字叫什么,后缀叫什么?

【3】结论,首页只要取名叫index.html放到上面4个目录任意一个即可

访问首页的方式,不需要指定文件名字

http://localhost:8080/

为了保证安全可以修改默认的目录

在application.properties文件修改

properties文件修改配置

# 这种方式会覆盖系统的四个目录,之后系统就不认识默认的4个目录了

spring.resources.static-locations=classpath:/test/,classpath:/test2

html资源文件放在哪里,09 Spring Boot开发web项目之静态资源放哪里?相关推荐

  1. Spring Boot 开发web 项目

    可参考博文: 搭建Spring Boot 项目 使用idea解决新建jsp文件而找不到jsp文件模版的新建选项 (一)快速搭建Web 项目 博主使用的是IDEA ,下面是项目目录结构:在用IDEA 创 ...

  2. 使用Spring Boot开发Web项目

    前面两篇博客中我们简单介绍了spring Boot项目的创建.并且也带小伙伴们来DIY了一个Spring Boot自动配置功能,那么这些东西说到底最终还是要回归到Web上才能体现出它的更大的价值,so ...

  3. Spring Boot:(五)静态资源和拦截器处理

    Spring Boot:(五)静态资源和拦截器处理 前言 本章我们来介绍下SpringBoot对静态资源的支持以及很重要的一个类WebMvcConfigurerAdapter. 正文 前面章节我们也有 ...

  4. 【spring boot】5.spring boot 创建web项目并使用jsp作前台页面

    贼烦的是,使用spring boot 创建web项目,然后我再idea下创建的,but 仅仅启动spring boot的启动类,就算整个项目都是好着的,就算是能够进入controller中,也不能成功 ...

  5. Spring Boot 开发web网页(helloworld为例)

    Spring Boot 开发入门--- helloworld web 一.使用IntellijIDEA建立第一个spring boot 项目(helloworld) 1.创建一个spring boot ...

  6. Spring Boot开发Web应用

    Spring Boot快速入门中我们完成了一个简单的RESTful Service,体验了快速开发的特性.在留言中也有朋友提到如何把处理结果渲染到页面上.那么本篇就在上篇基础上介绍一下如何进行Web应 ...

  7. Spring Boot - 开发Web应用

    为什么80%的码农都做不了架构师?>>>    原文 静态资源访问 Spring Boot默认提供静态资源目录位置需置于classpath下,目录名需符合如下规则: /static ...

  8. spring boot整合security时候处理静态资源拦截问题

    添加上箭头注意写法和对应项目中的实际路径包名/css/**的意思可以跨包访问css下的所有文件与包

  9. Spring Boot之Web开发

    Web开发 简单了解 快速上手 JSON 的支持 RESTful 的支持 支持热部署 快速上手 拦截器与过滤器 自定义过滤器 示例 自定义拦截器 示例 打包部署 多环境配置 服务器配置 项目打包 简单 ...

最新文章

  1. APK在AndroidManifest.xml常用权限总结
  2. mysql 优化配置 大批量数据插入_[译] MySQL 最佳实践 —— 高效插入数据
  3. 加载tf模型 正确率很低_深度学习模型训练全流程!
  4. 【转】Android中APK安装过程及原理解析
  5. element下拉框回显问题
  6. 1、爱因斯相对论(狭义相对论)
  7. 软件测试基础学习笔记
  8. Firefox 4.0浏览器正式版再次推迟发布
  9. 仿金蝶进销存源码(含数据库脚本)
  10. 【HAVENT原创】Spring RestTemplate 工具类
  11. 计算机word2010怎么替换,实用电脑Word文档巧替换小技巧
  12. 2018-2019 2 20165203 《网络对抗技术》 Exp4 恶意代码分析
  13. SSD固态硬盘优化设置图文教程
  14. 爬虫:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position
  15. linux上设置别名alias(快速便捷打开文件)
  16. 第四届阿里巴巴性能大赛总结
  17. 谷歌注册手机无法验证解决办法2023亲测有效非常迅速
  18. 【HAN】代码逐句理解三
  19. unity 全屏但有窗口_Unity3D跨屏幕、全屏显示方法
  20. CTSCAPIO 2015 酱油记

热门文章

  1. 500并发 一台服务器的性能_面试官绝杀:系统是如何支撑高并发的?
  2. 【编程科普】服务器的软件和硬件
  3. sqlserver2000与sqlserver2005驱动与url的区别
  4. MySQL 引擎 阿里_MySQL引擎讲解-阿里云开发者社区
  5. 如何修改bt tracker服务器,bt tracker服务器
  6. 宝塔 运程mysql_宝塔面板使用详解(极简搭建各种环境、mysql数据库等)
  7. vscode打开一个文件就会关闭一个文件
  8. reactive streams的Mono及Flux
  9. SpringBoot启动错误 If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
  10. 怎么看表_怎么和爸妈沟通?