Spring Boot如何整合FreeMarker模板引擎

POM

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

项目结构

src/
 +- main/
   +- java/
   |  +- com
   |    +- controller/
   |    |  +- IndexController.class
   |    +- Application.class
   +- resources/
     +- templates/
       +- index.ftlh
  • Application为应用程序启动类
  • IndexController为控制器,里面含有一个index请求处理方法,它返回index字符串,表示渲染模板文件index.ftlh。
  • index.ftlh为freemarker模板文件

Applciation.class

@SpringBootApplication
public class Application {

  public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
  }
}

IndexController.class

@Controller
public class IndexController {
  @GetMapping("/index")
  public String index(Model model) {
    model.addAttribute("name", "Alice");
    return "index";
  }
}

注意@ResponseBody注解不能和freemarker一起使用,所以此处不能标注@RestController注解。

index.ftlh

<!DOCTYPE html>
<html>
<head>
  <title>test</title>
</head>
<body>
hello ${name}!
</body>
</html>

运行

运行Application类里的main方法。

然后访问localhost:8080/index,结果展示为:

hello Alice!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

Spring Boot如何整合FreeMarker模板引擎

扫一扫手机访问