在后台对前端输入的字符长度限制,例如xx名称长度不能超过30,若不做控制数据库会报500异常
2021/11/6 19:11:56
本文主要是介绍在后台对前端输入的字符长度限制,例如xx名称长度不能超过30,若不做控制数据库会报500异常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第一步:在属性上面加 @size()注解
import lombok.Data; import lombok.NonNull; import javax.validation.constraints.Size; @Data public class ModifyBean { // 备注信息 @NonNull private String remark; // 规则id @NonNull private Integer ruleId; // 规则配置json private String configJson; //规则名称 @NonNull @Size(max = 30, message = "xx名称长度不能超过30") private String ruleName; }
第二步: @Validated 注解
@PostMapping(value = "/moxx") @ApiOperation(value = "编辑xx", notes = "") public Map<String, Object> modifyRule(@RequestBody @Validated ModifyBean bean, HttpServletRequest request) {
第三步: 对抛出的异常进行进一步处理,否则会抛出一大堆异常栈信息。
在Spring 全局异常处理类中处理异常
@ControllerAdvice public class GlobalExceptionHandler extends BaseController
@ResponseBody @ExceptionHandler(MethodArgumentNotValidException.class) public Map<String, Object> globalException(MethodArgumentNotValidException e, HttpServletRequest request) { BindingResult bindingResult = e.getBindingResult(); String erroeMsg = ""; List<FieldError> fieldErrors = bindingResult.getFieldErrors(); for (FieldError fieldError : fieldErrors) { erroeMsg += fieldError.getDefaultMessage(); } return failedResult(null, "参数校验不通过", erroeMsg, request, null, "Exception", e.getMessage(), null);
这篇关于在后台对前端输入的字符长度限制,例如xx名称长度不能超过30,若不做控制数据库会报500异常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15AntDesign项目实战:新手入门与初级应用教程
- 2024-11-15AntDesign-Form-rules项目实战:新手指南
- 2024-11-14ESLint课程:初学者指南
- 2024-11-14Form.List 动态表单课程:新手入门教程
- 2024-11-14Redux课程:新手入门完全指南
- 2024-11-13MobX 使用入门教程:轻松掌握前端状态管理
- 2024-11-12前端编程资料:新手入门指南与初级教程
- 2024-11-12前端开发资料入门指南
- 2024-11-12前端培训资料:适合新手与初级用户的简单教程
- 2024-11-12前端入门资料:新手必读指南