spring mvc @PathVariable绑定URI模板变量值方式

网友投稿 240 2022-11-26

spring mvc @PathVariable绑定URI模板变量值方式

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

@PathVariable绑定URI模板变量值

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

@RequestMapping(value="/users/{userId}/topics/{topicId}")

public String test(

@PathVariable(value="userId") int userId,

@PathVariable(value="topicId") int topicId)

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

代码

在PathVariableTypeController中。

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

spring mvc:练习 @RequestParam和@PathVariable

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

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

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

@RequestMapping(value="/example/user")

public String UserInfo(Model model, @RequestParam(value="name", defaultValue="Guest") String name)

实例:

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模板变量的值

@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)

实例:

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(http://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";

}

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:全志T507实现SPI转CAN 全过程的详细讲解
下一篇:听说你还不懂React Hook?
相关文章

 发表评论

暂时没有评论,来抢沙发吧~