Thymeleaf之链接表达式传参问题

版权声明:本文为 小异常 原创文章,非商用自由转载-保持署名-注明出处,谢谢!
本文网址: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>


三、渲染效果

在这里插入图片描述



博客中若有不恰当的地方,请您一定要告诉我。前路崎岖,望我们可以互相帮助,并肩前行!



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章