2、控制器
发布时间:
控制器
@Controller
请求的是页面和数据
@RestController
只请求数据 ,默认返回对象转换为JSON格式
路由映射
定义
@RequestMapping 负责URL 路由映射,可以添加在Controller类或者具体方法
添加在Controller 对所有路由添加此映射,如添加方法上只对当前方法有效
包含参数
value:请求路径支出URL模版,正则表达式 requestMapping("/user") 支持通配符
mathood:http请求方法
js
@RequestMapping(value="/hello" , method = RequestMethod.GET)
@GetMapping("/hello")//等于上一行
public String hello(){
return "hellosss损失ssss444s";
}
//如果用 @RequestParam 默认值不能为空 传参数nickname 对应方法中的nname ,required = false 为值可以为空
@RequestMapping(value = "/getTest1",method = RequestMethod.GET)
public String getTest1(@RequestParam(value = "nickname",required = false)String name){
return "hellosss损失ssss444s";
}
参数传递
1、@ RequestParam 直接绑定方法的参数,可以省略
2、可以直接用对象接收参数,但是对象中一定要有get ,set方法
js
@PostMapping("/user")
public String save(User user) {
return "user";
}
js
public class User {
private String name;
private String pw;
public String getPw() {
return pw;
}
public void setPw(String pw) {
this.pw = pw;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
添加get,set,右单击Genrate 》
3,发送参数为json类型字符串,接收参数前加@RequestBody
{
"name":"zhang",
"pw":"123"
}
js
@PostMapping("/user")
public String save(@RequestBody User user) {
return "user";
}