zoukankan      html  css  js  c++  java
  • 暑假撸系统5- Thymeleaf 常用标签的

    上次博客已经是三天前了,后期修补和细化的东西多了,进度没有前几天那么明显了。因为原来工作大多是后端居多,如果非要前台也会选择一些相对对ui依赖比较小的框架,比如extjs,所以这次的基础排版就费劲了,不过也正好也趁这个机会学习下。

    通过这几天对Thymeleaf这个模板的系统的学习,已经明白为什么它会取代el表达式被更多人接受了。主要的原因就是和后端分离,可以让美工直接在浏览器上静态查看效果。大白话就是原来的jsp的el表达式啥了其实浏览器是不知道咋回事的,所以执行不了。但是Thymeleaf是在html标签连增加额外的属性来达到模板+数据的展示的,所以浏览器解释html的时候会忽略未定义的标签属性,从而可以静态运行没问题。当有数据的时候,Thymeleaf标签又会动态的替换掉静态的内容,从而去动态显示。

    因为上次写java已经是好几年前了,这次备课也只是背了大一的java基础,进阶的ssm等技术已经丢的差不多了,所以很多东西基本都是从头来,不过慢慢拾起来的过程也比较有啥意思,毕竟增删查改已经不会让我快乐了,如果没有别的新鲜感,是果真做不下去了!!!效率主要是输在前端布局的问题上!!用不熟悉的技术!痛并快乐!

    完成了自动根据条件进行组卷

    完成了试卷检验,这个页面也可以作为考试使用!

     剩下的就是考生的个人中心页面了,预计是准备前后端分离!前端是前端的ui,后端是后端的ui。剩下的时间就是学习前端!!!

    常用th标签都有那些?

    关键字功能介绍案例
    th:id 替换id <input th:id="'xxx' + ${collect.id}"/>
    th:text 文本替换 <p th:text="${collect.description}">description</p>
    th:utext 支持html的文本替换 <p th:utext="${htmlcontent}">conten</p>
    th:object 替换对象 <div th:object="${session.user}"> 
    th:value 属性赋值 <input th:value="${user.name}" /> 
    th:with 变量赋值运算 <div th:with="isEven=${prodStat.count}%2==0"></div> 
    th:style 设置样式 th:style="'display:' + @{(${sitrue} ? 'none' : 'inline-block')} + ''" 
    th:onclick 点击事件 th:onclick="'getCollect()'" 
    th:each 属性赋值 tr th:each="user,userStat:${users}"> 
    th:if 判断条件  <a th:if="${userId == collect.userId}" > 
    th:unless 和th:if判断相反 <a th:href="@{/login}" th:unless=${session.user != null}>Login</a> 
    th:href 链接地址 <a th:href="@{/login}" th:unless=${session.user != null}>Login</a> /> 
    th:switch 多路选择 配合th:case 使用 <div th:switch="${user.role}"> 
    th:case th:switch的一个分支 <p th:case="'admin'">User is an administrator</p>
    th:fragment 布局标签,定义一个代码片段,方便其它地方引用 <div th:fragment="alert">
    th:include 布局标签,替换内容到引入的文件 <head th:include="layout :: htmlhead" th:with="title='xx'"></head> /> 
    th:replace 布局标签,替换整个标签到引入的文件 <div th:replace="fragments/header :: title"></div> 
    th:selected selected选择框 选中 th:selected="(${xxx.id} == ${configObj.dd})"
    th:src 图片类地址引入 <img class="img-responsive" alt="App Logo" th:src="@{/img/logo.png}" /> 
    th:inline 定义js脚本可以使用变量 <script type="text/javascript" th:inline="javascript">
    th:action 表单提交的地址 <form action="subscribe.html" th:action="@{/subscribe}">
    th:remove 删除某个属性 <tr th:remove="all"> 1.all:删除包含标签和所有的孩子。2.body:不包含标记删除,但删除其所有的孩子。3.tag:包含标记的删除,但不删除它的孩子。4.all-but-first:删除所有包含标签的孩子,除了第一个。5.none:什么也不做。这个值是有用的动态评估。
    th:attr 设置标签属性,多个属性可以用逗号分隔 比如th:attr="src=@{/image/aa.jpg},title=#{logo}",此标签不太优雅,一般用的比较少。

     

     

     

  • 相关阅读:
    面试再问ThreadLocal,别说你不会
    利用 Docker Compose 搭建 SpringBoot 运行环境(超详细步骤和分析)
    高并发场景下缓存处理的一些思路!
    利用Dockerfile部署SpringBoot项目
    [RH254] 1-运行级别
    [RH134] 12-系统启动
    [安全] HTTPS的理解
    [工具] Wireshark与相关的网络安全
    [Python自学] 爬虫(5)selenium
    [Python自学] 爬虫(4)xpath
  • 原文地址:https://www.cnblogs.com/liuadong/p/13333864.html
Copyright © 2011-2022 走看看