Spring Boot 使用 FreeMarker 渲染页面

Spring Boot提供了默认配置的模板引擎主要有以下几种:

FreeMarker
Groovy
Thymeleaf
Mustache

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

导入 freemarker 依赖

在 pom.xml 文件中添加如下依赖。

<!-- Spring Boot Freemarker 依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>

controller 文件

使用 @Controller 而不是先前的 @RestController (restful api 形式,返回 json)方法返回值是 String 类型,和 Freemarker 文件名一致。这样才会准确地把数据渲染到 ftl 文件里面进行展示。向 Model 加入数据,并指定在该数据在 Freemarker 取值指定的名称,和传统的 jsp 开发类似。

@Controller
@RequestMapping(value = "/user")
public class UserController {

    @RequestMapping(value = "/{id}", method = RequestMethod.GET)
    public String getUser(Model model, @PathVariable("id") Long id) {
        User user = new User();
        user.setId(id);
        user.setName("liu");
        user.setAge(20);
        model.addAttribute("user", user);
        return "user";
    }

}

freemarker 文件

新建 user.ftl 文件,放到 resources/templates 目录下。

<!DOCTYPE html>
<html>
<body>
id: ${user.id}
<br>
name: ${user.name}
<br>
age: ${user.age}
</body>
</html>

运行应用

启动 web 应用,执行命令

mvn spring-boot:run

在浏览器上输入 http://localhost:8080/user/1 可以看到返回结果

id: 1 
name: liu 
age: 20

项目示例:https://github.com/lzx2011/springBootPractice

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值