使用SpringBoot创建工程的方式:

1、在IDEA集成的Boot官网选项中点选可能需要的框架环境即可

2、SpringBoot已经设置好了这些场景,只需要配置文件中指定少量配置就可以运行起来

3、编写业务,不再关心配置的问题


创建Web工程

第一种点选Web创建

第二种:直接导入依赖

【第一种本质就是导入依赖,只不过是加了GUI设置,人性化一点】

        <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

开箱即用:

package cn.dai.web.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody; /**
* @author ArkD42
* @file SpringBootWeb
* @create 2020 - 05 - 09 - 11:24
*/
@Controller
public class HelloController { @ResponseBody // 忽略视图解析器,直接返回字符串
@GetMapping("/hello")
public String hello(){
return "Hello SpringBoot Web!!!";
}
}

访问控制器


Boot对静态资源的映射规则:

通常来说,JavaWeb开发是有一个Web目录的存在

我们的页面,也就是静态资源和Java处理程序是分开存放的

现在在Boot里面,这些静态资源交给了resources保管

以webjars的方式放置资源

依赖获取网址

https://www.webjars.org/

Maven坐标引入和jar包查看

实际URL访问资源可以直接这样使用:

localhost:8080/工程名/webjars/jquery/3.5.1/jquery.js

非jar包则访问以下路径【静态资源路径访问】

-   /** 访问所有路径
- classpath:/META-INF/resources/
- classpath:/resources/ 【也就是 resources/resources】
- classpath:/static/   【也就是 resources/static】
- classpath:/public/   【也就是 resources/public】
- / 当前工程的根路径

也就是说,在resources整个目录范围内和这三个目录内存放静态资源都有效

这些路径在URL访问时,是这样的

localhost/工程名/你存放在这些目录的资源    

如果自定义了目录,就要再加上自己写的 目录 + 资源 这样

没设置工程名,默认就是8080完事了


探索静态资源的优先级关系

我们四个路径都设置同一个文件名称,测试访问这个文件到底是哪个

最先访问META-INF.resources中的

删掉再访问

再删掉访问

最后只剩下resources的文件时,不会被访问到。。。


首页设置

首页必须是index.html这样的文件和文件名称与后缀

然后必须放在public目录下,其他的不能被当成首页访问

图标Logo设置:

只需要把图片命名为favicon.icon,可以正常查看

然后放在静态资源目录里面即可

图标制作网站:http://www.bitbug.net/

几经测试,只有放在META-INF.resources下面的有效,

其他不知道是不是浏览器缓存问题


【SpringBoot】10 Web开发 Part1 静态资源的更多相关文章

  1. 十二、springboot之web开发之静态资源处理

    springboot静态资源处理 Spring Boot 默认为我们提供了静态资源处理,使用 WebMvcAutoConfiguration 中的配置各种属性. 建议大家使用Spring Boot的默 ...

  2. SpringBoot之Web开发——webjars&静态资源映射规则

    在webjars中找到需要引入的Maven依赖,添加到pom.xml中,即可自动导入相关依赖.

  3. SpringBoot——Web开发(静态资源映射)

    静态资源映射 SpringBoot对于SpringMVC的自动化配置都在WebMVCAutoConfiguration类中. 其中一个静态内部类WebMvcAutoConfigurationAdapt ...

  4. Springboot 系列(五)Spring Boot web 开发之静态资源和模版引擎

    前言 Spring Boot 天生的适合 web 应用开发,它可以快速的嵌入 Tomcat, Jetty 或 Netty 用于包含一个 HTTP 服务器.且开发十分简单,只需要引入 web 开发所需的 ...

  5. 尚硅谷springboot学习21-web开发-处理静态资源

    SpringBoot对静态资源的映射规则 @ConfigurationProperties(prefix = "spring.resources", ignoreUnknownFi ...

  6. SpringBoot:Web开发

    西部开源-秦疆老师:基于SpringBoot 2.1.6 的博客教程 , 基于atguigu 1.5.x 视频优化 秦老师交流Q群号: 664386224 未授权禁止转载!编辑不易 , 转发请注明出处 ...

  7. SpringBoot第四集:静态资源与首页定(2020最新最易懂)

    SpringBoot第四集:静态资源与首页定(2020最新最易懂) 问题 SpringBoot构建的项目结构如下:没有webapp目录,没有WEB-INF等目录,那么如果开发web项目,项目资源放在那 ...

  8. SpringBoot学习(七)-->SpringBoot在web开发中的配置

    SpringBoot在web开发中的配置 Web开发的自动配置类:在Maven Dependencies-->spring-boot-1.5.2.RELEASE.jar-->org.spr ...

  9. SpringBoot之WEB开发-专题二

    SpringBoot之WEB开发-专题二 三.Web开发 3.1.静态资源访问 在我们开发Web应用的时候,需要引用大量的js.css.图片等静态资源. 默认配置 Spring Boot默认提供静态资 ...

  10. 超全的web开发工具和资源

    首页 新闻 产品 地图 动态 城市 帮助 论坛 关于 登录 注册 · 不忘初心,继续前进,环境云V2接口正式上线 · 环境云测点地图全新改版 · 祝福各位环境云用户中秋快乐!   平台信息 培训互动 ...

随机推荐

  1. INFINI Labs 产品更新 | 修复 Easysearch 跨集群复制索引同步问题,Gateway 内存异常增长等问题

    INFINI Labs 产品又更新啦~,本次更新主要对 Easysearch.Gateway.Console.Agent 等产品功能进行优化和相关 Bug 修复,解决了内存异常增长等问题,以下是详细说 ...

  2. 590. N 叉树的后序遍历 | Javascript 递归实现

    题目 题目链接:590. N 叉树的后序遍历 解题思路 递归后续遍历,正常的思路 然后有一个要注意的地方就是如果js定义了全局变量来存储结果,每次调用函数之前一定要记得清空,否则答案会带上之前的结果. ...

  3. Python做点击率数据预测

    点击率(Click-Through Rate, CTR)预测是推荐系统.广告系统和搜索引擎中非常重要的一个环节.在这个场景中,我们通常需要根据用户的历史行为.物品的特征.上下文信息等因素来预测用户点击 ...

  4. 端口占用,无法通过netstat找到进程,占用的端口又不能修改,该怎么办?

    最近遇到一个奇葩的问题,项目跑的好好的,没有安装其它特殊软件,突然服务器启动报错,日志如下,显然是服务器的8080端口占用了. Caused by: java.net.BindException: A ...

  5. sqoop导入导出到mysql,hbase,hive,hdfs系统,多表关联导出案例

    Sqoop工具1.协助 RDBMS 与 Hadoop 之间进行高效的大数据交流.把关系型数据库的数据导入到 Hadoop 与其相关的系统 (如HBase和Hive)同时也可以把数据从 Hadoop 系 ...

  6. 【OpenVINO™】YOLOv10在CPU上也能实现50+FPS推理—使用OpenVINO C++部署YOLOv10

    ​ 英特尔发行版 OpenVINO 工具套件基于 oneAPI 而开发,可以加快高性能计算机视觉和深度学习视觉应用开发速度工具套件,适用于从边缘到云的各种英特尔平台上,帮助用户更快地将更准确的真实世界 ...

  7. python3 json.dumps(OrderDict类型) 报错:TypeError: Object of type datetime is not JSON serializable

    chatgpt给出的解决方案, 在json.dumps()函数调用中传入default参数来指定如何处理datetime对象 import json from datetime import date ...

  8. 关于ComfyUI的一些Tips

    关于ComfyUI的一些Tips 前言: 最近发的ComfyUI相关文章节奏不知道会不会很快,在创作的时候没有考虑很多,想着把自己的知识分享出去.后台也看到很多私信,有各种各样的问题,这是我欠缺考虑了 ...

  9. 推荐一款Python接口自动化测试数据提取分析神器!

    1.引言 在处理JSON数据时,我们常常需要提取.筛选或者变换数据.手动编写这些操作的代码不仅繁琐,而且容易出错.Python作为一个功能强大的编程语言,拥有丰富的库和工具来处理这些数据.今天,将介绍 ...

  10. 国内版Unity 6 Preview编辑器无法切换到DX12的解决方案(6000.0.5f1c1已解决)

    先放解决方案的链接:https://www.cnblogs.com/horeaper/p/18200364 6000.0.0f1c1问题依旧,仍然是没有D3D12文件夹: 不仅新文件不加,旧文件(ha ...