url的写法
带参数的写法:
第一种:
参数是以?形式带在后面
直接带指定参数
<a th:href="@{/showAllUser?page=0}" role="button">首页</a>
参数是变量的写法
<a th:href="@{/showAllUser(page=(${usersPage.number} le 0 ? 0 :(${usersPage.number}-1)))}" role="button">上一页</a>
<a th:href="@{/showAllUser(page=(${usersPage.number} ge ${usersPage.totalPages} ? ${usersPage.totalPages} :(${usersPage.number}+1)))}" role="button">下一页</a>
<a th:href="@{/showAllUser(page=${usersPage.totalPages})}" role="button">末页</a>
多参数,就是使用逗号隔开多个参数
<a th:href="@{/Controller/behavior(param1=1,param2=${person.id})}"></a>
总结 get方式的请求是用括号然后参数=值方式,解析以后就是:
url?param1=value1¶m2=value2
第二种 :
参数以url的形式存在
<a th:href="@{/admin/showAllUser/0}" role="button">首页</a>
<a th:href="@{/admin/showAllUser/}+(${usersPage.number} le 0 ? 0 :(${usersPage.number}-1))" role="button">上一页</a>
<a class="btn btn-default" th:href="@{/admin/showAllUser/}+(${usersPage.number} ge ${usersPage.totalPages} ? ${usersPage.totalPages} :(${usersPage.number}+1))" role="button">下一页</a>
<a class="btn btn-default" th:href="@{'/admin/showAllUser/'+${usersPage.totalPages}}" role="button">末页</a>
<a class="btn btn-sm btn-primary" th:href="@{/emp/}+${emp.id}">编辑</a>
有三种情况:
一种是直接带常量参数如首页那个链接。
一种是直接带一个变量参数如编辑那个链接。
一种是直接带一个表达式作为参数的如上一页和下一页那两个链接。
最后要注意:
在url中,也就是@{}里面的英文的小括号(())会被解析成英文的问号(?)。
注意:
th:href="@{'/admin/deleteUser/'+${user.id}}"
和
th:href="@{/admin/deleteUser/}+${user.id}"
是一样的