使用之前将的快速创建项目的方法,勾选我们需要的场景,这里我需要 web --> websql --> mybatisnosql --> redis ,就勾选相关的场景;


对静态资源的映射规则

  1. /webjars/**

    凡是访问 /webjars/** 都去 calsspath:/META-INF/resources/webjars 目录下面找资源;

    webjars 是通过 jar 包形式引入静态资源,可以去 http://www.webjars.org 去看下都有哪些资源可以用过 jar 形式引入;

    通过 webjars方式引入的资源,它们的访问路径就是:



    文件在 webjars 下面的路径;

  2. /** 访问当前项目的任何资源 (静态资源文件夹

    如果没有对应的处理器,处理请求,则去以下路径寻找 静态资源 (/ 代表当前项目的根路径):

    • classpath:/META-INF/resources/
    • classpath:/resources/
    • classpath:/static/
    • classpath:/public/
  3. 欢迎页

    静态资源文件夹下面的所有 index.html 页面,都会被映射为 / ;如果在多个地方配置了首页,则 static 下面的 index.html 脱颖而出,成为首页 ;

  4. 改变页面图标

    比如像下面这样,将网页的图标变为自定义的图片;

    只需要在静态资源文件夹下面,放一张自己喜欢的图片,取名叫 facvicon.ico 即可 ;

后记:我们也可以改变静态资源文件夹的位置,通过在配置文件里面配置 :

spring.resources.static-locations=classpath:/,classpath:/yiaz (可配置多个,用逗号分隔)

这样前面默认的几个静态资源文件夹就失效了 ;


模板引擎

说到模板引擎,可能会感到陌生,其实我们之前使用的,现在感觉落后的 JSP 就是一个模板引擎;

模板引擎的思路就是,在模板中使用一下特殊的语法,表示这里需要填充数据,然后后来传来数据,最后将数据和模板一起交给模板引擎,模板引擎进行解析,就成了最后的页面,如上图所示;

Spring Boot 推荐使用的模板引擎是 thymeleaf,高级语言模板引擎;

  1. 引入 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.3Spring Boot ,经过上面的一通操作,代码成功的跑不起来了,提示版本不对;


Thymeleaf 使用 & 语法

只需要将我们的静态资源页面放在 classpath:/templates/ 下面就好了,thymeleaf 就会自动渲染;

  1. 引入名称空间

    使用之前最好在页面中引入名称空间,以便得到语法提示;

    <html xmlns:th="http://www.thymeleaf.org">
  2. 语法

    但凡涉及到属性或者文本的操操作,th:xxx 会替换掉 xxx ,如果 th:xxx 没有值,则使用 xxx ,如果 th:xxx 有值,则使用 th:xxx

  3. 表达式

    参照 thymeleaf 文档


(4)Spring Boot Web开发---静态资源的更多相关文章

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

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

  2. Spring Boot实战:静态资源处理

    前两章我们分享了Spring boot对Restful 的支持,不过Restful的接口通常仅仅返回数据.而做web开发的时候,我们往往会有很多静态资源,如html.图片.css等.那如何向前端返回静 ...

  3. Springboot 系列(七)Spring Boot web 开发之异常错误处理机制剖析

    前言 相信大家在刚开始体验 Springboot 的时候一定会经常碰到这个页面,也就是访问一个不存在的页面的默认返回页面. 如果是其他客户端请求,如接口测试工具,会默认返回JSON数据. { &quo ...

  4. (5)Spring Boot web开发 --- Restful CRUD

    文章目录 `@RestController` vs `@Controller` 默认访问首页 设置项目名 国际化 登陆 & 拦截 Restful 风格 @RestController vs @ ...

  5. Springboot 系列(六)Spring Boot web 开发之拦截器和三大组件

    1. 拦截器 Springboot 中的 Interceptor 拦截器也就是 mvc 中的拦截器,只是省去了 xml 配置部分.并没有本质的不同,都是通过实现 HandlerInterceptor ...

  6. Spring Boot 中的静态资源到底要放在哪里?

    当我们使用 SpringMVC 框架时,静态资源会被拦截,需要添加额外配置,之前老有小伙伴在微信上问松哥Spring Boot 中的静态资源加载问题:"松哥,我的HTML页面好像没有样式?& ...

  7. Spring Boot中的静态资源文件

    Spring Boot中的静态资源文件 1.SSM中的配置 2.Spring Boot 中的配置 2.1 整体规划 2.2 源码解读 2.3 自定义配置 2.3.1 application.prope ...

  8. 四、Spring Boot Web开发

    四.Web开发 1.简介 使用SpringBoot: 1).创建SpringBoot应用,选中我们需要的模块: 2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可 ...

  9. 4.Spring Boot web开发

    1.创建一个web模块 (1).创建SpringBoot应用,选中我们需要的模块: (2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来 (3).自己编 ...

随机推荐

  1. 树——倍增LCA

    与正文无瓜的前言 身为一个高一才开始学的OIER,现在才开始恶补模板,感觉今年就要退役了. 不想刷题了滚过来写写博客<-------极端危险的思想. 引入 LCA(Lowest Common A ...

  2. UMD、CommonJS、ES Module、AMD、CMD模块的写法

    AMD异步模块规范 RequireJS就是AMD的一个典型的实现. 以下是一个只依赖与jQuery的模块代码: // foo.js define(['jquery'], function($){ // ...

  3. MySQL Online DDL导致全局锁表案例分析

    MySQL Online DDL导致全局锁表案例分析 我这边遇到了什么问题? 线上给某个表执行新增索引SQL, 然后整个数据CPU打到100%, 连接数暴增到极限, 最后导致所有访问数据库的应用都奔溃 ...

  4. 深入理解JVM虚拟机13:再谈四种引用及GC实践

    Java中的四种引用类型 一.背景 Java的内存回收不需要程序员负责,JVM会在必要时启动Java GC完成垃圾回收.Java以便我们控制对象的生存周期,提供给了我们四种引用方式,引用强度从强到弱分 ...

  5. 三大框架 之 Hibernate查询(一对多、多对多、查询关系)

    目录 一对多 表之间关系 表之间关系建表原则 一对多关系配置 建立表 建立ORM 添加配置文件 在hibernate.cfg.xml中的标签里,添加核心配置文件 引入工具类 编写测试类 级联操作 什么 ...

  6. js的prototype理解

    转载:https://www.cnblogs.com/douyage/p/8630529.html 在典型的面向对象的语言中,如java,都存在类(class)的概念,类就是对象的模板,对象就是类的实 ...

  7. iview3 版本 升级

    Button 废弃 type ghost,原先的 default 样式有改变. Icon 的图标升级至 ionicons 3.0 图标,图标名称有改变. Breadcrumb 废弃 href 属性. ...

  8. 【转】45个实用的JavaScript技巧、窍门和最佳实践

    原文:https://colobu.com/2014/09/23/45-Useful-JavaScript-Tips,-Tricks-and-Best-Practices/ 目录 [−] 列表 第一次 ...

  9. Docs-.NET-C#-指南-语言参考-预处理器指令:#pragma warning(C# 参考)

    ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#pragma warning(C# 参考) 1.返回顶部 1. #pragma warning(C# 参考) 2015/07/ ...

  10. ISO/IEC 9899:2011 条款6.8.5——迭代语句

    6.8.5 迭代语句 语法 1.iteration-statement: while    (    expression    )    statement do    statement    w ...