前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >springboot (二) thymeleaf

springboot (二) thymeleaf

作者头像
IT架构圈
发布2018-06-01 12:57:08
5860
发布2018-06-01 12:57:08
举报
文章被收录于专栏:IT架构圈IT架构圈

前言: thymeleaf 是由thyme taIm ,leafli:f两个单词组成. thymeleaf 是java模版引擎,可以很好的和spring集成。

1.引入依赖

代码语言:javascript
复制
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

2.application.properties中添加配置

代码语言:javascript
复制
spring.thymeleaf.cache=false
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.check-template-location=true
spring.thymeleaf.suffix=.html
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.content-type=text/html
spring.thymeleaf.mode=HTML

注: Spring Boot使用的Thymeleaf 3.0或者更高版本是配置:

代码语言:javascript
复制
   spring.thymeleaf.mode=HTML。

如果Thymeleaf 2.0版本的话配置:

代码语言:javascript
复制
   spring.thymeleaf.mode=HTML5。

3.创建Controller ,和相应html。

代码语言:javascript
复制
@Controller
@RequestMapping("/user")
public class UserController {
    @RequestMapping(value = "/login")
    public String login() {
        return "/login";
    }
}

上面返回/login,即返回对应login.html,

代码语言:javascript
复制
   <!DOCTYPE html>
    <html lang="en" >
    <head>
        <meta charset="UTF-8">
        <title>登录页面</title>
    </head>
    <body>
    <H2>登录测试</H2>
    </body>
    </html>

如果页面需要使用thymeleaf需要添加命名空间xmlns:th="http://www.thymeleaf.org"

4.运行测试,访问'http://localhost:8080/user/login',效果如图:

5.后台用过模版引擎传递参数给页面 后台添加参数。笔者在 在上面的UserController添加方法,并设置参数:

代码语言:javascript
复制
   @RequestMapping(value = "/login2")
    public String login2(ModelMap map) {
        Map<String, Object> userInfoMap = new HashMap<>();
        userInfoMap.put("name", "张三");
        userInfoMap.put("age", 24);
        SimpleVo vo = new SimpleVo();
        vo.setCode(1000);
        vo.setMessage("请求成功");
        map.put("userInfo", userInfoMap);
        map.put("vo", vo);
        return "/login2";
    }

对应login2.html

代码语言:javascript
复制
   <!DOCTYPE html>
    <html lang="en" xmlns:th="http://www.thymeleaf.org">
    <head>
        <meta charset="UTF-8">
        <title>thymeleaf模版,带数据的</title>
    </head>

用户名:

代码语言:javascript
复制
   <span th:text="${userInfo.name}"></span><br/>

年龄:

代码语言:javascript
复制
   <span th:text="${userInfo.age}"></span><p />

访问对象属性:

代码语言:javascript
复制
   <span th:text="${vo.code}"/> ,

访问对象方法:

代码语言:javascript
复制
   <span th:text="${vo.getMessage()}"/><p />
    <a th:href="@{/user/login}">相对路径页面测试</a><p/>
    <a th:href="@{http://www.baidu.com}">据对路径测试(比如访问:百度)</a><p/>
    </body>
    </html>

运行效果如图:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程坑太多 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档