字符串拼接可使用以下方式。html
<a href="#" th:text="第+${StartNo}+頁 +' '+共+${countPage}+頁">
還有一種更優雅的方式,使用「||」減小了字符串的拼接,代碼以下。java
<a href="#" th:text="|第${StartNo}頁 共${countPage}頁|">
這個問題也比較常遇到,好比想經過超連接刪除數據庫中某條數據,那麼在超連接上就須要傳入此數據的主鍵。如圖,我要修改此用戶那麼就要在修改的超連接上把10064這個ID傳進來。算法
超連接傳參代碼以下,須要注意Thymeleaf對URL進行渲染,務必使用th:href,th:src屬性 。數據庫
<a class="border-main" th:href="@{userPower(id=${user.Id})}"><span class="edit"></span> 修改
幾點須要說明:app
前面介紹了if的用法,接下來介紹一個與if用法相同但表達相反的屬性 th:unless ,二者都是條件判斷,if表示表達式成立則執行動做,而unless表示表達式中的條件不成立,纔會執行動做。less
thymeleaf還有一種相似Java中的三元運算符的用法,代碼以下。dom
<input th:text="(${user.isAdmin}?'管理員':'普通用戶')"></input>
Controller代碼:工具
@RestController public class IndexController { @PostMapping("toIndex") public String toIndex(Model model) { List<String> datas = new ArrayList<String>(); datas.add("二十歲之後"); datas.add("995600491"); model.addAttribute("datas", datas); model.addAttribute("curDate", new Date()); model.addAttribute("number", Math.random()*100); return "index"; } }
上面的代碼,包含了工做中常使用的數據類型,有集合,時間類型,數值類型,下面咱們使用thymeleaf的內置對象來解析他們。spa
<span th:text="${#lists.size(datas)}"></span>
<span th:text="${#dates.format(curDate, 'yyyy-MM-dd HH:mm:ss')}"></span>
<span th:text="${#numbers.formatDecimal(number, 0, 3)}"></span>
解釋:保留三位小數, 整數位自動。code
<span th:text="${#numbers.formatDecimal(number,3,1)}"></span>
解釋: 保留1位小數位,3位整數位(不夠的前面加0) 。
特別提示:
內置對象前都須要加#號。
內置對象通常都以s結尾。
其餘經常使用內置對象:
#numbers: 數字格式化; #strings:字符串格式化,參照java.lang.String; #bools:判斷boolean類型; #lists:集合操做的工具,參照java.util.List; #sets:Set集合操做工具,參照java.util.Set; #maps:Map集合操做工具,參照java.util.Map; #dates:日期格式化,參照java.util.Date;