当前位置:首页 > 通信资讯 > 正文

spring mvc @pathvariable绑(spring mvc @pathvariable绑)

目录
  • @PathVariable绑定URI模板变量值
  • @RequestParam(参数绑定到控制器)和@PathVariable(参数绑定到url模板变量)

@PathVariable绑定URI模板变量值

@PathVariable用于将请求URL中的模板变量映射到功能处理方法的参数上。

?
1 2 3 4 @RequestMapping(value="/users/{userId}/topics/{topicId}") public String test( @PathVariable(value="userId") int userId, @PathVariable(value="topicId") int topicId)

如请求的URL为“控制器URL/users/123/topics/456”,则自动将URL中模板变量{userId}和{topicId}绑定到通过@PathVariable注解的同名参数上,即入参后userId=123、topicId=456。

代码在PathVariableTypeController中。

@RequestParam(参数绑定到控制器)和@PathVariable(参数绑定到url模板变量)

spring mvc:练习 @RequestParam和@PathVariable

  • @RequestParam: 注解将请求参数绑定到你的控制器方法参数
  • @PathVariable: 注释将一个方法参数绑定到一个URI模板变量的值

@RequestParam: 注解将请求参数绑定到你的控制器方法参数

?
1 2 3 @RequestMapping(value="/example/user") public String UserInfo(Model model, @RequestParam(value="name", defaultValue="Guest") String name)   

实例:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 package springmvc; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @Controller public class RequestParamExampleController { @RequestMapping(value="/example/user") public String UserInfo(Model model, @RequestParam(value="name", defaultValue="Guest") String name) { model.addAttribute("name", name); if("admin".equals(name)) { model.addAttribute("email", "admin@google.com"); }else { model.addAttribute("email", "not set"); } return "example_user"; } }   

@PathVariable: 注释将一个方法参数绑定到一个URI模板变量的值

?
1 2 3 4 5 @RequestMapping(value="/example/info/{language}/{id}/{name}") public String userInfo2(Model model, @PathVariable(value="language") String language, @PathVariable(value="id") Long id, @PathVariable(value="name") String name)

实例:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 package springmvc; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.PathVariable; @Controller public class RequestParamExampleController { @RequestMapping(value="/example/person/{name}/{age}") public String userPerson(Model model, @PathVariable(value="name") String name, @PathVariable(value="age") Long age) { model.addAttribute("name", name); model.addAttribute("age", age); String desc = ""; if(age > 20) { desc = "oldman"; }else { desc = "yongman"; } model.addAttribute("desc", desc); return "example_person"; } }

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/PKWind/article/details/49757219

如果您对该产品感兴趣,请填写办理(客服微信:xiaoxiongyidong)

为您推荐:

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。