• 小D课堂


    知识点

    6、SpringBoot2.x目录文件结构讲解
         简介:讲解SpringBoot目录文件结构和官方推荐的目录规范

         1、目录讲解
             src/main/java:存放代码
             src/main/resources
                 static: 存放静态文件,比如 css、js、image, (访问方式 http://localhost:8080/js/main.js)
                 templates:存放静态页面jsp,html,tpl
                 config:存放配置文件,application.properties
                 resources:

         2、引入依赖 Thymeleaf
             <dependency>
               <groupId>org.springframework.boot</groupId>
               <artifactId>spring-boot-starter-thymeleaf</artifactId>
            </dependency>
            注意:如果不引人这个依赖包,html文件应该放在默认加载文件夹里面,
            比如resources、static、public这个几个文件夹,才可以访问

         3、同个文件的加载顺序,静态资源文件
         Spring Boot 默认会挨个从
         META/resources > resources > static > public  里面找是否存在相应的资源,如果有则直接返回。

         4、默认配置    
             1)官网地址:https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-web-applications.html#boot-features-spring-mvc-static-content

             2)spring.resources.static-locations = classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/ 

         5、静态资源文件存储在CDN

    新建了几个文件夹

    同个文件的加载顺序,静态资源文件

    挨个文件夹去查找

    这几个文件夹都有test.js


    templates文件夹下的 输出template

    启动之前先把这里注释掉。路径映射是不完全匹配,属于资源文件也可能会映射过来。一般我们会在路径前面加一个v1/这种前缀 固定的这样就不会映射过来了。


    启动我们的应用

    直接输入test.js.默认输出的是resources文件夹下的

    如果我们把resurces文件夹的test.js删掉

    再次访问输入的是tatic目录下的



    重启服务。直接访问index.html访问不到。找不到文件的映射

    这个时候就需要引入一个模板引擎

    Thymeleaf模板引擎


    pom.xml内引入

    再建一个controller映射过去。这里用Controller的注解 也可以用restController的注解
    @RequestMapping放一个路径,让他跳转到某一个文件夹里面去。
    index就映射到templates下的index.html

    启动应用

    赢了映射的路径访问到了

    图片和css的访问

    static下新建images文件夹,然后在里面新建100.png

    statics和resources这两个目录,默认在路径上我们是不用加进去的。默认是从这俩文件夹里面查找。
    路径里面直接输入子目录就可以了

    直接输入css/main.css就访问到了

    图片直接输入images/100.png

    自定义资源文件

    新建test的文件夹,上面复制一个test.js进去

    改个名字叫做test3.js

    直接访问是访问不到的

    路径前面加个test也不行


    需要加一个配置文件,复写配置

    新建application.properties这个文件

    把这段配置复制过去

    后面加上一段:,classpath:/test/


    重启应用
    可以直接访问到

    把内容输出改成test3.js



    不过一般很少会把资源文件放到这里,大企业会自建CDN,内容分发
     

  • 相关阅读:
    Linux 下没有 my.cnf 文件的解决方式,完全是我自己整的,好多教程都是瞎扯的 (zhuan)
    Virtualbox虚拟机安装CentOS6.5图文详细教程(zhuan)
    virtualbox中centos系统配置nat+host only上网(zhuan)
    VirtualBox的网络配置,Host Only+NAT方式 (zhuan)
    Linux上安装Mysql后除了本机其他机器不能访问的问题(zhuan)
    VirtualBox没有64位选项,无法安装64位的解决方法(zhuan)
    CentOS查看内核版本,位数,版本号 (zhuan)
    datagrid实现单行的选择、取消
    datagrid实现行的上移和下移
    Excel 、数据库 一言不合就转换 (zhuan)
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11396566.html
Copyright © 2020-2023  润新知