首頁 > 軟體

Springboot中靜態檔案的兩種引入方式總結

2022-03-18 13:00:35

thymeleaf 模式

依賴中引入

<!-- 渲染靜態頁面 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

可選設定

如果你有

WebMvcConfigurationSupport 的一些類參照. 你需要放行他們

如果你參照了 springSecurity

你也需要放行他們

thymeleaf 需要通過controller層轉向view 層  

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
/**
 * @ClassName:
 * @Descripton:
 * @Author: sansy
 * @Date: 2019/5/16 10:12
 * @Version: 2.0
 */
@RestController
public class IndexController {
    @RequestMapping(value = "/index", method = RequestMethod.GET)
    public ModelAndView index() {
        System.out.println("/index進入controller控制器");
        ModelAndView mav = new ModelAndView();
        mav.setViewName("index");
        return mav;
    }
    @RequestMapping(value = "/home", method = RequestMethod.GET)
    public ModelAndView home() {
        System.out.println("/home進入controller控制器");
        ModelAndView mav = new ModelAndView();
        mav.setViewName("index");
        return mav;
    }
    @RequestMapping(value = "/error", method = RequestMethod.GET)
    public ModelAndView error() {
        System.out.println("/error進入controller控制器");
        ModelAndView mav = new ModelAndView();
        mav.setViewName("index");
        return mav;
    }
    @RequestMapping(value = "/login", method = RequestMethod.GET)
    public ModelAndView login() {
        System.out.println("/login進入controller控制器");
        ModelAndView mav = new ModelAndView();
        mav.setViewName("index");
        return mav;
    }
    @RequestMapping(value = "/", method = RequestMethod.GET)
    public ModelAndView indexs() {
        System.out.println("/ 進入controller控制器");
        ModelAndView mav = new ModelAndView();
        mav.setViewName("index");
        return mav;
    }
    @RequestMapping(value = "/404", method = RequestMethod.GET)
    public ModelAndView error404() {
        System.out.println("/404 進入controller控制器");
        ModelAndView mav = new ModelAndView();
        mav.setViewName("index");
        return mav;
    }
}

yml 做如下設定

構架這樣構架

非thymeleaf 模式

首先去掉依賴

刪除controller的指向view層

如果你想帶控制器也是可以的   (帶的話 指向index. 不帶的話 預設指向index .可以理解成一個絕對路徑,一個相對路徑)

yml檔案中這樣設定 

是為了能夠直接存取 根目錄下的text檔案 

構架如下

完成.

以上為個人經驗,希望能給大家一個參考,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com