Spring Boot—06集成前端模板thymeleaf

Spring Boot建议使用这些模板引擎,避免使用JSP,若一定要使用JSP将无法实现Spring Boot的多种特性


pom.xml

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>


application.properties

spring.thymeleaf.cache=true
spring.thymeleaf.enabled=true


后端Controller类

package com.smartmap.sample.ch1.controller.view;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
@RequestMapping("/system")
public class MainViewController {

    @RequestMapping("")
    public String index(@RequestParam(required = false, name = "sessionId") String sessionId, Model model) {
        if (sessionId == null || sessionId.equals("")) {
            return "redirect:/system/login.html";
            // return "forward:/system/login.html";
        } else {
            String osName = System.getProperty("os.name");
            model.addAttribute("name", "hello world");
            model.addAttribute("host", osName);
            return "index";
        }
    }

    @RequestMapping("/login.html")
    public String login(@RequestParam(required = false, name = "username") String username,
            @RequestParam(required = false, name = "password") String password, Model model) {

        if (StringUtils.isEmpty(username) || StringUtils.isEmpty(password)) {
            return "login.html";
        } else {
            return "redirect:/system?sessionId=12345";
        }
    }
}


前端index.html

<!DOCTYPE html>  
<html xmlns:th="http://www.thymeleaf.org"> 
<head lang="en">
    <meta charset="UTF-8" />
    <title></title>
</head>
<body>
<h1 th:text="${host}">Hello World</h1>
</body>
</html>


目录结构

image

posted @ 2018-04-23 18:38  ParamousGIS  阅读(514)  评论(0编辑  收藏  举报