SpringMVC中 常用注解总结

SpringMVC中 常用注解总结

1、@RequestMapping

设置请求映射路径,通常标注在类上或方法上。

@Controller
// 类上,相当于这个类的所有方法都加了这个映射路径,要与getMapping、postMapping等一起使用
@RequestMapping("/user")
public class userController(){
	@PostMapping("/login")
	public String login(){
	}
}
// 方法上,只用于这个方法的请求映射路径
@Controller
public class userController(){
	@RequestMapping("/login")
	public String login(){
	}
}

2、@PathVariable

获取请求地址中通过占位符传输的数据并将它们赋值到控制器方法的形参中。

@Controller
public class userController{
	@RequestMapping("/userLogin/{userName}/{password}")
	public String userLogin(@PathVariable("userName") String userName,
							@PathVariable("password") String password){
							
							}
}

3、@RequestParam

将请求参数与控制器方法的形参创建映射关系

属性:

  • value:请求参数名;
  • required:是否必须传此参数,默认为true;
  • defaultValue:设置默认值;
//分页查询
@Controller
public class userController{
	@RequestMapping("/page")
	public String page(@RequestParam("page",defaultValue = "1") int page,
					   @RequestParam("pageSize",defaultValue = "10") int pageSize,
					   @RequestParam("userName",defaultValue = "") String userName){
					   }
}

4、@RequestHeader

作用:将请求头信息与控制器方法的形参创建映射关系
属性:同@RequestParam

5、@CookieValue

作用:将cookie信息与控制器方法的形参创建映射关系
属性:同@RequestParam


6、@RequestBody

获取请求体,需要在控制器方法设置一个形参。

@Controller
public class userController{
	@RequestMapping("/userUpdate")
	public String update(@RequestBody User user){
	}
}

7、@ResponseBody

标识一个控制器方法,可以将该方法的返回值直接作为响应报文的响应体响应到浏览器。

标注位置:同@RequestMapping

@Controller
public class userController{
	@RequestMapping("/userUpdate")
	@ResponseBody
	public User update(@RequestBody User user){
		return user;
	}
}

8、@RestController

相当于@Controller+@ResponseBody,用在类上。

你可能感兴趣的:(spring,java)