1。在controller接口方法接收参数加上

@Valid注解 并且在实体类参数后紧跟 BindingResult bindingresul

BindingResultMsgUtil工具类:

public class BindingRequestMsgUtil {

/**

* 输出bindingResult中的错误信息

* @param bindingResult

* @return

*/

public static ResultData bindingResultErrorMessage(BindingResult bindingResult,Class clz) {

ObjectError objectError = bindingResult.getAllErrors().get(0);

JSONObject resFiled1 = JsonUtil.objectToJsonObject(objectError);

String resFiled = resFiled1.get("field").toString();

Field declaredField = null;

try {

declaredField = clz.getDeclaredField(resFiled);

} catch (NoSuchFieldException e) {

e.printStackTrace();

}

MyFieldAnnotation declaredAnnotation = declaredField.getDeclaredAnnotation(MyFieldAnnotation.class);

String fieldNotes = "";

if (declaredAnnotation!=null){

fieldNotes = declaredAnnotation.fieldAnnotation();

}

return bindingResult != null && bindingResult.hasErrors()

? getStandardErrorJSONO(!StringUtils.isBlank(fieldNotes)

?fieldNotes+":"+bindingResult.getFieldError().getDefaultMessage():bindingResult.getFieldError().getDefaultMessage()) : null;

}

/**

* 获取一个规定好格式了的json字符串, 出错时的格式

* @param message 消息内容

* @return {"result":-1, "message":message}

*/

public static ResultData getStandardErrorJSONO(String message){

return getStandardErrorJSONO(message, null);

}

/**

* 获取一个规定好格式了的json字符串, 出错时的格式

* @param message 消息内容

* @param data data字段包含的数据

* @return {"result":-1, "message":message, "data":...}

*/

public static ResultData getStandardErrorJSONO(String message, Object data){

return getJSONO(0, message, data);

}

/**

* 获取一个规定好格式了的json字符串

* @param statusCode 状态码

* @param message 消息内容

* @param data data字段包含的数据

* @return {"result":statusCode, "message":message, "data":...}

*/

public static ResultData getJSONO(int statusCode, String message, Object data){

return ResultData.returnData(statusCode,message,data);

}

}

2.在实体类中添加注解@NotBlank   和自定义注解 @MyfieldAnnotation

自定义注解类:

@Retention(RetentionPolicy.RUNTIME)

@Target(value = {ElementType.FIELD})

public @interface MyFieldAnnotation {

String fieldAnnotation() default "";

}

java 注解报错_java注解验证接收参数 返回注解字段的错误相关推荐

  1. java override报错_java @override 报错处理

    转载自:http://blog.sina.com.cn/s/blog_9c7605530101kl9r.html 一.java @override 报错处理 做项目的时候,同事那边电脑上编译通过的ja ...

  2. java test报错_Java 单元测试报错

    «Java 单元测试报错:Test class should have exactly one public zero-argument constructor» public class Test{ ...

  3. 电脑配置java编译报错_java 编译错误

    我有两个简单的代码,ClickMe.java代码为:importjava.applet.Applet;importjava.awt.*;importjava.awt.event.*;publiccla ...

  4. 注解报错_Java中的注解使用:全面性的总结一下

    前话: 今天,我们又来聊一下注解的使用,做一下详细的解析,也介绍了自定义注解,请耐心往下看哟! 注解的介绍: 在2005年,sun公司推出了jdk1.5,同时推出的注解功能吸引了很多人的目光,使用注解 ...

  5. java package报错_Java从入门到精通(一)

    标识符 Java语言中,为各种变量.方法和类等起的名字称为标识符 Java标识符的命名规则: 应以字母.下划线.美元符开头 后跟字母.下划线.美元符或数字 Java标识符大小写敏感,长度无限制 jav ...

  6. java package报错_Java基础知识总结 - 超详细篇(上)

    1,JDK:Java Development Kit,java的开发和运行环境,java的开发工具和jre. 2,JRE:Java Runtime Environment,java程序的运行环境,ja ...

  7. java sendredirect报错_java 中sendredirect()和forward()方法的区别

    HttpServletResponse.sendRedirect与RequestDispatcher.forward方法都可以实现获取相应URL资源. sendRedirect实现请求重定向,forw ...

  8. java resourse 报错_java.nio.file.InvalidPathException: Illegal char :

    一.报错: java.nio.file.InvalidPathException: Illegal char <:>at sun.nio.fs.WindowsPathParser.norm ...

  9. java instanceof 报错_java instanceof方法

    基本用法 null instanceof Object   为false: null instanceof 任意类 为false: 任意实例 instanceof 对应的类或者父类 都为true: 基 ...

最新文章

  1. 《科学》杂志做了一个清单,告诉你今年 10 个最重要的科技突破
  2. java常见集合及其用途
  3. [NOIP2014] 解方程
  4. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 按钮:让按钮看起来像个链接 (仍然保留按钮行为)...
  5. python 设计模式 观察者_设计模式Python实现-观察者模式
  6. ❤️520要来啦,快去给心仪的她写表白代码趴!(python)❤️
  7. 如何列出目录的所有文件
  8. shell 脚本 简易for循环 脚本
  9. SAP License:SAP顾问薪酬
  10. Linux 学习笔记 (四)Ubuntu14.04 解决上网问题安装无线网卡驱动
  11. Tensorflow2.0实战之GAN
  12. Cannot find module ‘https-proxy-agent‘
  13. 转载 SpringMVC详解(一)------入门实例
  14. Maya根据模型建立乐高模型
  15. Spark RDD实训4:计算总成绩
  16. 考研、考公还是找工作?别在大学因为迷茫这个问题浪费时间了
  17. 校园二手交易平台毕设 校园二手商城毕业设计 毕设二手校园商品交易 二手商城系统 java二手交易市场 springboot商城 ssm二手交易平台下载 源代码+数据库+调试运行+讲解代码
  18. Swift学习笔记 ——(一)
  19. zz 图像数据投影投影数据重建图像 radon
  20. 计算机双屏竖屏桌面背景6,科技:使用这些双显示屏壁纸让你的桌面变得更加美观...

热门文章

  1. AutoShape:实时形状感知的单目3D目标检测(ICCV2021)
  2. 仅凭一部iPhone手机,打造现实版元宇宙
  3. 全景分割 | Learning to Fuse Things and Stuff
  4. 基于自动驾驶车辆的激光雷达与摄像头之间的在线标定算法
  5. 训练Epoch, Batch, Iteration
  6. IOS中Cell自定义
  7. LeetCode 51. N皇后
  8. Reinhard经典色彩迁移算法
  9. PyTorch | (3)Tensor及其基本操作
  10. python实现将txt文件格式转换为arff格式