SpringBoot教程
SpringBoot入门案例
SpringBoot框架Web开发
SpringBoot非web应用程序
SpringBoot使用拦截器
SpringBoot中使用Servlet
SpringBoot中使用Filter
SpringBoot项目配置字符编码
SpringBoot打包与部署
SpringBoot使用Actuator
SpringBoot集成Thymeleaf模板
SpringBoot总结及综合案例
SpringBoot工程下使用Mybatis反向工程

Thymaleaf表达式基本对象与功能对象

Thymaleaf表达式基本对象

模板引擎提供了一组内置的对象,这些内置的对象可以直接在模板中使用,这些对象由#号开始引用,我们比较常用的内置对象。

1.#request

相当于httpServletRequest 对象,这是3.x版本,若是2.x版本使用 #httpServletRequest

o ${#request.getContextPath()}

在页面获取应用的上下文根,一般在js中请求路径中加上可以避免404

<script type="text/javascript" th:inline="javascript">
    var contextPath =[[${#request.getContextPath()}]];
    var url = contextPath + "/user/userInfo";
    alert(url);
</script>

o ${#request.getAttribute("phone")}

如果后台将数据传到request中,可以通过该方式在页面上获取

2.#session

相当于HttpSession 对象,这是3.x版本,若是2.x版本使用#httpSession

o 在后台ThymeleafController中的userInfo方法中向session中放数据

session.setAttribute("website","http://www.sxbdqn.cn");

o 在user.html中从session中取数据

<p th:text="${#session.getAttribute('website')}"></p>

Thymaleaf表达式功能对象

模板引擎提供的一组功能性内置对象,可以在模板中直接使用这些对象提供的功能方法;

工作中常使用的数据类型,如集合,时间,数值,可以使用Thymeleaf的提供的功能性对象来处理它们;

内置功能对象前都需要加#号,内置对象一般都以s结尾;

官方手册:http://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html

#dates: java.util.Date对象的实用方法,

#calendars: 和dates类似, 但是 java.util.Calendar 对象;

#numbers: 格式化数字对象的实用方法;

#strings: 字符串对象的实用方法: contains, startsWith, prepending/appending等;

#objects: 对objects操作的实用方法;

#bools: 对布尔值求值的实用方法;

#arrays: 数组的实用方法;

#lists: list的实用方法,比如#sets: set的实用方法;#maps: map的实用方法;#aggregates: 对数组或集合创建聚合的实用方法;