SpringMVC相关注解

127 阅读1分钟

SpringMVC相关注解

1、 @Validated :数据校验,配合PO、VO等相关对象使用 eg:

   Controller:
   public CommonResult login(@Validated @RequestBody UmsAdminLoginParam umsAdminLoginParam) {...}//@Validated 校验请求参数是否符合POJO校验标准,这样就省取了非空判断逻辑
   pojo:
   @Data
@EqualsAndHashCode(callSuper = false)
public class UmsAdminLoginParam {
   @NotEmpty//校验不为空
   @ApiModelProperty(value = "用户名",required = true)
   private String username;
   @NotEmpty
   @ApiModelProperty(value = "密码",required = true)
   private String password;
}

2、@GetMapping:等于@RequestMapping(method = RequestMethod.GET) @PostMapping:等于:@RequestMapping(method = RequestMethod.POST)

3、@Controller:不多阐述

4、@PathVariable:将路径数据做为方法请求参数:

@ApiOperation("修改品牌排序")
@RequestMapping(value = "/update/sort/{id}", method = RequestMethod.POST)
@ResponseBody
public CommonResult updateSort(@PathVariable Long id, Integer sort) {
    ...
}

5、@RequestBody:返回相应的Body,字符形式,没有该注解则是返回视图对象

6、@RestController: 仅为json服务,避免了你重复的写@RequestMapping与@ResponseBody,缺点就是不够灵活