版權聲明:本文爲 小異常 原創文章,非商用自由轉載-保持署名-註明出處,謝謝!
本文網址:https://blog.csdn.net/sun8112133/article/details/107055984
在使用 Thymeleaf 模板引擎 時,我們常常會用到使用鏈接傳參數的問題,本篇博客主要來講解如何使用 Thymeleaf 鏈接表達式 來進行傳參。
本篇博客直接以案例的方式講解,一點廢話都不多說。。
一、Controller
@Controller
public class HelloController {
@GetMapping("/result")
public ModelAndView result(){
System.out.println("result方法");
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("result");
modelAndView.addObject("id", 201);
modelAndView.addObject("info", "Hello Thymeleaf!");
return modelAndView;
}
@GetMapping("/link")
public ModelAndView link(Integer id) {
System.out.println("link方法,取到了參數id:" + id);
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("redirect:/result");
return modelAndView;
}
@GetMapping("/links")
public ModelAndView links(Integer id, String name) {
System.out.println("links方法,取到了參數id:" + id + "和name:" + name);
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("redirect:/result");
return modelAndView;
}
@GetMapping("/links/{id}/{name}")
public ModelAndView links2(@PathVariable("id") Integer id, @PathVariable("name") String name) {
System.out.println("links2方法,取到了參數id:" + id + "和name:" + name);
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("redirect:/result");
return modelAndView;
}
}
二、Thymeleaf
<body>
單參數:<a th:href="@{~/link(id=${id})}" th:text="${info}"></a><br>
多參數:<a th:href="@{~/links(id=${id}, name=${info})}" th:text="${info}"></a><br>
REST風格參數:<a th:href="@{~/links/{id}/{name}(id=${id}, name=${info})}" th:text="${info}"></a>
</body>