一、编程语言

用于编写html模版的编程语言。

thymeleaf一种命令式和声名式混合的寄生语言。

html与thymeleaf的结合是dsl与命令式语言的结合。

html与thymeleaf的结合是一种html的中间产品。

这种语言的输入是model数据,输出是结合上下文的html可用元素。

作为html元素的生成器。

根据model数据来生成描述html要素的属性;或者根据model提供集合元素的上下文,进而生成集合要素。

表达model数据

根据model数据来描述html元素属性或生成html数据。

<tr th:each="user : ${users}">

<td th:text="${user['name']}"></td>

<td th:text="${user['email']}"></td>

<td th:text="${user['phone']}"></td>

</tr>

<li th:class="${userPage == i} ? 'page-item active' : 'page-item'"

th:each="i:${#numbers.sequence(1,userTotalPage)}">

<a class="page-link" th:text="${i}" th:onclick="getUserList([[${i}]])"></a>

</li>

二、相对于js:

thymeleaf 用于全部或局部生成html。

js用于在生成后的维护。

三、template、model与页面请求

java的controller提供html的数据和需要渲染的html的名称。

全局请求可以通过js发起、也可以通过浏览器发起;

局部页面请求通过js发起,返回局部页面的html。

每一次请求都是服务端重新配置模版、数据、生成html并返回html的过程。

返回的是html,而不是数据。

function getUserList(pageNum){

console.log($("#user_page"))

axios.get('/sms/home/users',{

params:{

"page":pageNum,

"pageSize":"3"

}

})

.then(function(response){

console.log(response.data);

$("#user_list").html(response.data);

})

.catch(function(err){

console.log(err);

});

}

@RequestMapping(value = "/home/users")

public String homePageUsers(Model model,

@RequestParam("page") int page,

@RequestParam("pageSize") int pageSize) throws Exception {

PageInfo<?> users = userService.getRecordsByPage(page, pageSize);

model.addAttribute("users", users.getList());

return "home::user_list";

}

thymeleaf是用于编写html模版的编程语言(工具语言)的更多相关文章

  1. 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情7. 安装 PHP PHP 是用于 web 基础服务的服务器端脚本语言。它也经常被用作通用编程语言。在最小化安装的 CentOS 中安

    CentOS 是一个工业标准的 Linux 发行版,是红帽企业版 Linux 的衍生版本.你安装完后马上就可以使用,但是为了更好地使用你的系统,你需要进行一些升级.安装新的软件包.配置特定服务和应用程 ...

  2. Mol Cell Proteomics. |马臻| psims-一个用于编写HUPO-PSI标准下的mzML和mzIdentML的python库

    大家好,本周分享的是发表在MCP(MOLECULAR&CRLLULAR PROTEOMICS)上的一篇关于质谱数据处理和识别的文章,题目是psims - A Declarative Write ...

  3. 用于编写下一代JavaScript的编译器。

    下载 用于编写下一代JavaScript的编译器. 支持巴别塔 Babel(发音为babble)是一个由社区驱动的项目,被许多公司和项目使用,由一群志愿者维护.如果你愿意帮助支持这个项目的未来,请考虑 ...

  4. Selenium也是一个用于Web应用程序测试的工具

    Selenium也是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Firefox.Mozilla Suite ...

  5. ROS(indigo) 用于机器人控制的图形化编程工具--code_it robot_blockly

    0 简介: 编程语言有汇编,高级语言,解释语言等,现在图形化编程也越来越流行.图形化编程简单易学.8年前,微软推出了VPL用于机器人程序设计,如Python和JavaScript都可以用图形化框图实现 ...

  6. Python编写类似nmap的扫描工具

    文主要是利用scapy包编写了一个简易扫描工具,支持ARP.ICMP.TCP.UDP发现扫描,支持TCP SYN.UDP端口扫描,如下: usage: python scan.py <-p pi ...

  7. 4种用于构建嵌入式linux系统的工具_转

    转自:4种用于构建嵌入式linux系统的工具 Linux 被部署到比 Linus Torvalds 在他的宿舍里开发时所预期的更广泛的设备.令人震惊的支持了各种芯片,使得Linux 可以应用于大大小小 ...

  8. 用python编写的定向arp欺骗工具

    刚学习了scapy模块的一些用法,非常强大,为了练手,利用此模块编写了一个arp欺骗工具,其核心是构造arp欺骗包.加了一个-a参数用于进行全网欺骗,先暂不实现.代码如下: #--*--coding= ...

  9. 中文编程语言Z语言开源正式开源!!!

    (Z语言基于.NET环境,源码中有很多高技术的代码,让更多的人知道对大家有会有很好的帮助,请管理员一点要批准放在首页) 本人实现的中文编程语言Z语言现在正式开源,采用LGPL协议. 编译器核心的网址为 ...

随机推荐

  1. mysql 多条数据中,分组获取值最大的数据记录

    摘要: 多条纪录中,几个字段相同,但是其中一个或者多个字段不同,则去该字段最大(这里只有一个不同) 源数据: 目的是移除:在同一天中只能存在一天数据,则取审核日期最大,数据库脚本如下: SELECT ...

  2. 解决securecrt连接慢(而xshell秒连)的问题

    打开securecrt的跟踪选项,观察输出信息来诊断 解决方法: 1)首先,将全局设置中,GSSAPI属性由自动改为GSSAPI   2)其次,将不支持的多余的密钥交换去掉   3)最后,可以将服务端 ...

  3. ETL DAG调度策略

    1.目前etl的fetch task策略是基于任务子孙任务数和任务优先级获得task list 2.然后遍历task list 查看任务是否具备执行条件 集群资源校验(yarn/hdfs)<如果 ...

  4. Feign 报错:No fallback instance of type class xxx found for feign client xxx

    通常需要确认配置内容: 开启 Hystrix:feign.hystrix.enabled=true Fallback类需要注解@Component 出处:https://www.jianshu.com ...

  5. 22-C#笔记-预编译指令

    基本和C++一致. 参考: http://www.runoob.com/csharp/csharp-preprocessor-directives.html

  6. 学习:VB之4C法

    前言:4C法对于单纯的本地验证的话应该比较好使,但是基于网络验证可能就不是很好用了,尽管到了第二个窗口,功能应该还是不能用 逆向过程: 1.直接载入OD,发现第一条汇编指令如下 0040120C &g ...

  7. 第05组 Beta冲刺(3/4)

    第05组 Beta冲刺(3/4) 队名:天码行空 组长博客连接 作业博客连接 团队燃尽图(共享): GitHub当日代码/文档签入记录展示(共享): 组员情况: 组员1:卢欢(组长) 过去两天完成了哪 ...

  8. Oralce 学习笔记

    1. Oracle 数据库文件后缀是什么格式? 数据文件是以oracle自定义的格式存储的,没有固定的后缀名,一般通用的为.dbf和.ora而默认是dbf的 2.Database Configurat ...

  9. PATB1021个数统计

    参考代码: #include<cstdio> #include<cstring> #include<cstdlib> int main() { char str[1 ...

  10. 获取当前页面url指定参数值

    function getParam(paramName) { paramValue = "", isFound = !1; if (this.location.search.ind ...