springboot 验证注解@Valid,自定义返回参数格式
一,控制器@RequestMapping("/algorithmdepositoryinsert")@ResponseBodypublic String insert(@Valid @ModelAttribute Algorithmdepository ad){returniAlgorithmdepositoryService.save(ad)?ResultSuccess():ResultErr(
·
一,控制器
@RequestMapping("/algorithmdepositoryinsert")
@ResponseBody
public String insert(@Valid @ModelAttribute Algorithmdepository ad){
return Result(iAlgorithmdepositoryService.save(ad));
}
二,实体类
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import org.hibernate.validator.constraints.Length;
/**
* 专业
*/
@NotNull
private Integer major;
/**
* 所属单位
*/
@NotBlank
@Length(min=0, max=16)
private String company;
三,maven依赖 和spring-boot版本
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.2.4.Final</version>
</dependency>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
四,自定义返回格式
import org.springframework.validation.BindException;
import org.springframework.validation.FieldError;
/**
* 自定义参数异常返回
*/
@ExceptionHandler(BindException.class)
@ResponseBody
public String bingExceptionHandler(BindException ex){
FieldError fe = ex.getFieldError();
return ResultErr(fe.getField().concat(fe.getDefaultMessage()));
}
public static String ResultErr(String msg) {
return returnStr(RESULT_CODE.FAIL.val(), msg, null);
}
private static String returnStr(String code, String msg, Object data) {
ResResult bj = new ResResult();
bj.setCode(code);
bj.setMsg(msg);
bj.setData(data);
return JSONObject.toJSONString(bj);
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)