比如 我在name上做标记
@NotBlank("message="请填写姓名")
private String name;
但是 页面提示确会变成 : name请填写姓名;
感觉这机制很傻缺,怎么破,被用户看到这种提示会有种很LOU,不专业的感觉
貌似这个标签用的人还很多,各论坛都大肆提倡,但是百度上解决方案却一个没有。。。。
架构是spring boot
试了一下,并没有遇到你说的这种情况。建议检查下你的代码,看看是否有拦截器之类的对message进行了处理之类的。
我遇到了同样的问题,扒拉了半天得出结论
1.原框架默认不带字段名提示信息
2.应该是基础的错误处理器自定义了错误信息导致
3.查找类似代码:
```java
@ResponseBody
@ExceptionHandler(value = MethodArgumentNotValidException.class)
public CommonResult handleValidException(MethodArgumentNotValidException e) {
BindingResult bindingResult = e.getBindingResult();
String message = null;
if (bindingResult.hasErrors()) {
FieldError fieldError = bindingResult.getFieldError();
if (fieldError != null) {
//去除字段名
//message = fieldError.getField()+fieldError.getDefaultMessage();
message = fieldError.getDefaultMessage();
}
}
return CommonResult.validateFailed(message);
}
@ResponseBody
@ExceptionHandler(value = BindException.class)
public CommonResult handleValidException(BindException e) {
BindingResult bindingResult = e.getBindingResult();
String message = null;
if (bindingResult.hasErrors()) {
FieldError fieldError = bindingResult.getFieldError();
if (fieldError != null) {
//去除字段名
//message = fieldError.getField()+fieldError.getDefaultMessage();
message =fieldError.getDefaultMessage();
}
}
return CommonResult.validateFailed(message);
}
```
@NotBlank("message="请填写姓名") 这个当参数为空是,会抛出异常的,异常提示就是message里的内容,不会存在你说的message以外的提示,除非你前端在ajax返回的时候进行了处理。你可以在前端找找原因。
你怎么配置的?看看。
https://blog.csdn.net/qq_35992900/article/details/80068680
应该是你的ValidateUtil.validate()校验完成,自定义param+message格式化异常后的抛出,要去掉改底层源码
像这种应该是你项目中使用的框架底层拦截了异常进行统一处理,默认应该是没有的,像我现在项目中的框架一样,也进行了处理,如下,如果需要不显示参数名,建议修改对应异常处理的源码