龙空技术网

七、Thymeleaf对象的访问

爱分享的代码君 138

前言:

当前姐妹们对“html访客代码”大约比较注意,兄弟们都想要知道一些“html访客代码”的相关知识。那么小编在网上汇集了一些关于“html访客代码””的相关文章,希望各位老铁们能喜欢,大家快快来学习一下吧!

7.1、实体对象属性的访问

使用变量表达式访问对象属性时,可以使用"对象.属性名"的语法。注意此处的属性名是对象属性getter方法的名称。

示例

在项目包下添加domain包,在包中创建“User”类,添加userId和userName属性

import java.io.Serializable;public class User implements Serializable{private static final long serialVersionUID = -5822957642556734665L;private Integer userId;private String userName;//省略getter和setter方法,其中userName的getter方法的名称为getName}

在TestServlet中创建User对象,并给属性赋值,保存到rquest中

User u = new User();u.setUserId(1);u.setUserName("张三");request.setAttribute("user", u);

在test.html页面中使用ul标签显示属性的值

<ul>	 <li th:text="${user.userId}"></li>	 <li th:text="${user.name}"></li></ul>

运行test.do,页面显示效果如下

7.2 web对象的访问

在html页面中能够访问的web对象有request、session、servletContext对象,当不指定web对象进行访问时,thymeleaf只会request对象中的属性值。

示例

在TestServlet中,添加以下代码,在三个web对象中分别存入不同的属性值

request.setAttribute("scope", "request");

在index.html中输出scope的值

[[${scope}]]

运行test.do,页面显示效果如下,输出的是request范围的属性值

如果数据是保存在session或是servletContext中,必须指定范围对象。

语法

request范围:${xxx}或者${#request.getAttribute('xxx')session范围:${session.xxxx}或者${#session.getAttribute('xxx')servletContext范围:${application.xxx}或者${#servletContext.getAttribute('xxx')}获取请求参数:$(param.xxx)或者${#request.getParameter('scope')}

示例,在TestServlet中不同web对象中保存数据

request.setAttribute("scope", "request");request.getSession().setAttribute("scope", "session");request.getServletContext().setAttribute("scope", "servletContext");

修改index.html代码,从不同范围中获取数据

<ul>	        <li>[[${scope}]]</li>	   <li>[[${session.scope}]]</li>	   <li>[[${application.scope}]]</li>	        <li>[[${param.scope}]]</li></ul>

在路径后添加参数scope=parameter,再次运行。效果如下

7.3 thymeleaf内置变量的访问

thymeleaf提供了一些内置变量,这些变量使用#开头,使用这些内置变量可以获得更高的灵活性。

变量名

说明

#ctx

上下文对象。

#vars

上下文变量。

#locale

上下文locale。

#request

(仅在Web上下文中)HttpServletRequest对象。

#response

(仅在Web上下文中)HttpServletResponse对象。

#session

(仅在Web上下文中)HttpSession对象。

#servletContext

(仅在Web上下文中)servletContext对象。

示例

修改上一示例值的获取方式,使用内置变量访问

<ul>	<li>[[${#request.getAttribute('scope')}]]</li>	<li>[[${#session.getAttribute('scope')}]]</li>	<li>[[${#servletContext.getAttribute('scope')}]]</li>	<li>[[${#request.getParameter('scope')}]]</li></ul>

运行后效果与上一示例相同

文章来源于哔站《七、对象的访问 - 哔哩哔哩》

更多学习视频和专栏文章请到哔站个人空间: 布道师学院的个人空间-个人主页-哔哩哔哩视频

更多资源和项目下载请到:”开源吧(找实战项目和毕设项目的好网站)“ :开源吧

标签: #html访客代码