(4)Spring Boot Web开发---静态资源
使用之前将的快速创建项目的方法,勾选我们需要的场景,这里我需要 web --> web、sql --> mybatis、nosql --> redis ,就勾选相关的场景;
对静态资源的映射规则
- /webjars/**- 凡是访问 - /webjars/**都去- calsspath:/META-INF/resources/webjars目录下面找资源;- webjars是通过- jar包形式引入静态资源,可以去 http://www.webjars.org 去看下都有哪些资源可以用过- jar形式引入;- 通过 - webjars方式引入的资源,它们的访问路径就是: 
 文件在- webjars下面的路径;
- /**访问当前项目的任何资源 (静态资源文件夹)- 如果没有对应的处理器,处理请求,则去以下路径寻找 静态资源 ( - /代表当前项目的根路径):- classpath:/META-INF/resources/
- classpath:/resources/
- classpath:/static/
- classpath:/public/
 
- 欢迎页 - 静态资源文件夹下面的所有 - index.html页面,都会被映射为- /;如果在多个地方配置了首页,则- static下面的- index.html脱颖而出,成为首页 ;
- 改变页面图标 - 比如像下面这样,将网页的图标变为自定义的图片;  - 只需要在静态资源文件夹下面,放一张自己喜欢的图片,取名叫 - facvicon.ico即可 ;
后记:我们也可以改变静态资源文件夹的位置,通过在配置文件里面配置 :
spring.resources.static-locations=classpath:/,classpath:/yiaz (可配置多个,用逗号分隔)
这样前面默认的几个静态资源文件夹就失效了 ;
模板引擎

说到模板引擎,可能会感到陌生,其实我们之前使用的,现在感觉落后的 JSP 就是一个模板引擎;
模板引擎的思路就是,在模板中使用一下特殊的语法,表示这里需要填充数据,然后后来传来数据,最后将数据和模板一起交给模板引擎,模板引擎进行解析,就成了最后的页面,如上图所示;
Spring Boot 推荐使用的模板引擎是 thymeleaf,高级语言模板引擎;
- 引入 thymeleaf
	<!--引入 thymeleaf 模板引擎-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
然后在我们的类库中,可以看到:

这里Spring Boot为我们添加的是 3.0.11 版本,我们可以自己设置版本;
在属性里面配置:
		 <!--自定义 thymeleaf 版本-->
        <thymeleaf.version>3.0.9.RELEASE</thymeleaf.version>
        <!-- 如果我们使用 3以上的thymeleaf,则需要 layout2以上,这是它的布局功能的支持-->
        <thymeleaf-layout-dialect.version>2.2.2</thymeleaf-layout-dialect.version>
这时候再看我们的类库,可以看到:

变为我们制定的版本了;
这里我们一般不要瞎改,就使用默认版本的,因为涉及到版本匹配的问题;比如,博主使用的是 2.1.3 的 Spring Boot ,经过上面的一通操作,代码成功的跑不起来了,提示版本不对;
Thymeleaf 使用 & 语法
只需要将我们的静态资源页面放在 classpath:/templates/ 下面就好了,thymeleaf 就会自动渲染;
- 引入名称空间 - 使用之前最好在页面中引入名称空间,以便得到语法提示; - <html xmlns:th="http://www.thymeleaf.org">
 
- 语法  - 但凡涉及到属性或者文本的操操作, - th:xxx会替换掉- xxx,如果- th:xxx没有值,则使用- xxx,如果- th:xxx有值,则使用- th:xxx;
- 表达式 
(4)Spring Boot Web开发---静态资源的更多相关文章
- Springboot 系列(五)Spring Boot web 开发之静态资源和模版引擎
		前言 Spring Boot 天生的适合 web 应用开发,它可以快速的嵌入 Tomcat, Jetty 或 Netty 用于包含一个 HTTP 服务器.且开发十分简单,只需要引入 web 开发所需的 ... 
- Spring Boot实战:静态资源处理
		前两章我们分享了Spring boot对Restful 的支持,不过Restful的接口通常仅仅返回数据.而做web开发的时候,我们往往会有很多静态资源,如html.图片.css等.那如何向前端返回静 ... 
- Springboot 系列(七)Spring Boot web 开发之异常错误处理机制剖析
		前言 相信大家在刚开始体验 Springboot 的时候一定会经常碰到这个页面,也就是访问一个不存在的页面的默认返回页面. 如果是其他客户端请求,如接口测试工具,会默认返回JSON数据. { &quo ... 
- (5)Spring Boot web开发 ---  Restful CRUD
		文章目录 `@RestController` vs `@Controller` 默认访问首页 设置项目名 国际化 登陆 & 拦截 Restful 风格 @RestController vs @ ... 
- Springboot 系列(六)Spring Boot web 开发之拦截器和三大组件
		1. 拦截器 Springboot 中的 Interceptor 拦截器也就是 mvc 中的拦截器,只是省去了 xml 配置部分.并没有本质的不同,都是通过实现 HandlerInterceptor ... 
- Spring Boot 中的静态资源到底要放在哪里?
		当我们使用 SpringMVC 框架时,静态资源会被拦截,需要添加额外配置,之前老有小伙伴在微信上问松哥Spring Boot 中的静态资源加载问题:"松哥,我的HTML页面好像没有样式?& ... 
- Spring Boot中的静态资源文件
		Spring Boot中的静态资源文件 1.SSM中的配置 2.Spring Boot 中的配置 2.1 整体规划 2.2 源码解读 2.3 自定义配置 2.3.1 application.prope ... 
- 四、Spring Boot Web开发
		四.Web开发 1.简介 使用SpringBoot: 1).创建SpringBoot应用,选中我们需要的模块: 2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可 ... 
- 4.Spring Boot web开发
		1.创建一个web模块 (1).创建SpringBoot应用,选中我们需要的模块: (2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来 (3).自己编 ... 
随机推荐
- 主要排序算法(Python实现)
			1. 冒泡排序 算法描述:1. 比较相邻的两个数,对升序(/降序)而言,若当前数小于(大于)后一个数则交换两者的位置. 2.那么循环长度为L的列表,从第一个元素到倒数第(L-1)元素进行第1步操作,其 ... 
- input的禁止标签
			<body> <input type="text" name="" value="你好" disabled="d ... 
- 初识kubernetes
			Kubernetes最初源于谷歌内部的Borg,提供了面向应用的容器集群部署和管理系统.Kubernetes 的目标旨在消除编排物理/虚拟计算,网络和存储基础设施的负担,并使应用程序运营商和开发人员完 ... 
- Spring boot druid 的配置使用
			依赖加入 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artif ... 
- spark_API
			1.概述 总的来讲,每一个spark驱动程序应用都由一个驱动程序组成,该驱动程序包含一个由用户编写的main方法,该方法会在集群上执行一些并行计算操作.Spark最重要的一个概念是弹性分布式数据集,简 ... 
- Java 泛型 (Generics)
			泛型:就是变量类型的参数化 泛型是JDK1.5中的一个最重要的特征.通过引入泛型,我们将获得编译时类型的安全和运行时更小的抛出ClassCastException的可能. public class A ... 
- 胶囊网络 -- Capsule Networks
			胶囊网络是 vector in vector out的结构,最后对每个不同的类别,输出不一个向量,向量的模长表示属于该类别的概率. 例如,在数字识别中,两个数字虽然重叠在一起,Capsule中的两个向 ... 
- android -------- java.net.UnknownServiceException
			最近升级了Android的API版本时 ,导致我的网络请求失败了, 出现了这个错误 java.net.UnknownServiceException, 这个错误,我在网上查到这个主要是由于,我们的Ok ... 
- Centos 安装 nginx 特定版本
			CentOS 6.9/7通过yum安装指定版本的Nginx - EasonJim - 博客园https://www.cnblogs.com/EasonJim/p/9020896.html [root@ ... 
- MyBatis原理总结(前期准备)
			1.不同框架解决不用问题,框架封装了很多细节,开发者可以使用简单的方式实现功能. 2.三层架构: 1.表现层 2.业务层 3.持久层 都有相应的处理框架. 3.持久层的技术解决方案: JDBC技 ... 
