使用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. 剑指Offer-61.序列化二叉树(C++/Java)

    题目: 请实现两个函数,分别用来序列化和反序列化二叉树   二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存.序列化可以基于先序 ...

  2. Linux扩展篇-shell编程(八)-shell字符串截取

    shell字符串截取,一般包含从指定位置和从指定字符截取. 一.从指定位置截取 1) 从字符串左边开始计数 格式: ${string: start :length} 从 string 字符串的左边第 ...

  3. 利用Wireshark抓包分析DNS域名解析过程

    一.DNS协议概述   DNS协议也可以称为DNS服务,全称是Domain Name System,即域名系统,和HTTP协议一样,也是一个位于应用层的协议(服务),它是基于运输层的UDP协议的.从D ...

  4. 3个月搞定计算机二级C语言!高效刷题系列进行中

    前言 大家好,我是梁国庆. 计算机二级应该是每一位大学生的必修课,相信很多同学的大学flag中都会有它的身影. 我在大学里也不止一次的想要考计算机二级office,但由于种种原因,备考了几次都不了了之 ...

  5. # android studio启动虚拟机长时间无响应,无法启动

    问题 虚拟设备长时间不响应,无法启动设备 方案 根据 android studio启动虚拟器失败 尝试删除锁文件 失败,.android 目录下不存在锁文件 电脑内存或计算配置不足 查看了模拟器需要的 ...

  6. axios 下载文件流

    axios 下载文件流 背景:在处理文件下载时,服务端存在校验,需要在请求头里添加token 这时直接使用 a 标签就不能满足需求.接下来我们直接通过 axios 请求,在请求头里设置 token 请 ...

  7. C++11智能指针 unique_ptr、shared_ptr、weak_ptr与定制删除器

    目录 智能指针 场景引入 - 为什么需要智能指针? 内存泄漏 什么是内存泄漏 内存泄漏的危害 内存泄漏分类 如何避免内存泄漏 智能指针的使用及原理 RAII 简易例程 智能指针的原理 智能指针的拷贝问 ...

  8. 深入了解身份认证和授权机制,看看API请求到底发生了什么?

    前段时间写了一篇基于.NetCore环境使用IdentityServer4为API接口鉴权的文章,更多的是从快速上手的角度描述了IdentityServer4的使用.后续使用过程中,自己有了一些其他想 ...

  9. Elastic-Search 整理(二):高级篇

    ES高级篇 集群部署 集群的意思:就是将多个节点归为一体罢了,这个整体就有一个指定的名字了 window中部署集群 - 了解 把下载好的window版的ES中的data文件夹.logs文件夹下的所有的 ...

  10. PLSQL 无法查询带中文的WHERE条件

    今天遇到一个坑爹的问题,plsql无法查询带where条件的语句,是因为plsql中Oracle的客户端字符集和服务器上的不一样造成的,需要新增系统环境变量,特意记录下解决办法. 第一步:查询服务器上 ...