Spring Boot Web(一)开发简介及webajrs 和 静态资源映射规则

Web 开发简介

使用 SpringBoot 开发项目基本分为三个步骤;

  1. 创建 Spring Boot 应用,选中需要的模块,如web项目则选中web模块;
  2. Spring Boot 已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来
  3. 自己编写业务代码;

WebJars 简述

Web 前端使用了越来越多的JS或CSS,如jQuery、Bootstrap等。一般情况下,将这些Web资源拷贝到Java Web项目的webapp相应目录下进行管理。
WebJars 是将web前端资源(js,css等)打成jar包文件,然后借助Maven工具,以jar包形式对web前端资源进行统一依赖管理,保证这些Web资源版本唯一性。
WebJars 的jar包部署在Maven中央仓库上。WebJars官网:http://www.webjars.org/
使用起来更加简单,就像使用后台Java依赖一样,就它们同样在pom.xml中导入依赖即可
导入webJars


注意:应用中导入的所有jar包,如下面的“jquery-3.2.0.jar(library home)”就相当于类路径
“META-INF/resources”本身就是Spring Boot 约定的类路径下的静态资源默认访问目录,所以访问的时候不能再路径中加上“META-INF/resources”,而是直接从“webjars”层级开始


使用 webjars
导入之后,可以直接在浏览器访问


同理也可以在页面中使用它们,和以前并无区别

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>首页</title>
 
    <!-- 导入的所有webjars下的META-INF/resources与自己应用中的静态资源目录是一样的
    导入之后,这里写的时候就会有提示了-->
    <script type="text/javascript" src="webjars/jquery/3.2.0/dist/jquery.min.js"></script>
    <script type="text/javascript">
        $(function () {
            alert($("h3").text());
        });
    </script>
</head>
<body>
</body>
</html>

静态资源映射规则

  • Spring boot 有自己约定的静态资源映射规则,可以在“org.springframework.boot.autoconfigure.web”包下面的“ResourceProperties”类中找到
  • ResourceProperties类中约定如下,即默认应用中的静态资源都是从类路径下的以下目录中进行寻找
public class ResourceProperties {
private static final String[] CLASSPATH_RESOURCE_LOCATIONS =
 new String[]{"classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/"};
    private String[] staticLocations;
    private boolean addMappings;
    private final ResourceProperties.Chain chain;
    private final ResourceProperties.Cache cache;
"classpath:/META‐INF/resources/",
"classpath:/resources/",
"classpath:/static/",
"classpath:/public/"

如下图 静态资源放在类路径以下4个路径下都可以被访问到

欢迎页

  • 欢迎页即应用首页,默认映射静态资源文件夹下的第一个找到的index.html页面作为首页。
  • “localhost:8080/应用上下文路径 ”则默认找index页面

猜你喜欢

转载自blog.csdn.net/baiyan3212/article/details/87854770