**

Springboot required = false运用

**
先上代码
Controller

  public JsonResult<?> addTest(@RequestBody(required =  false)LuTestStudent luTestStudent){return luTestStudentService.add(luTestStudent);}

impl

 public JsonResult<?> add(LuTestStudent luTestStudent) {/***  除字符串外需用ObjectUtils 判断是否为null*/if (ObjectUtil.isEmpty(luTestStudent)){throw new BaseException("传入参数异常");}/*** 字符串需用 StringUtils isBlank进行判断  字符串为 ""或null 都不允许 isEmpty 不判断 ""*/if (StringUtils.isBlank(luTestStudent.getName())){throw new BaseException("名称不能为空");}return new JsonResult<>("添加成功");}

required = false的作用是 如果传来的值是空 也能进入impl的方法


很显然 这里的报错是进入了impl ObjectUtil.isEmpty判断对象是否为空的错

当测试接口改成如下

这里json传值 加了 {} ObjectUtil.isEmpty只参数判断是否为null 不判断里面是否""

当我们把controller中的required = false删除

再进行访问


很显然 required = false删除之后 null的参数无法让方法正常执行

但当我测试接口 json再加{}之后


爆错为 名称不能为空 说明 required 和 ObjectUtil.isEmpty 不判断 json的{} 是空

Springboot required = false运用相关推荐

  1. SpringMVC注解@RequestParam(value=xxxx,required=false)解释

    参数形式: @RequestParam(value = "key",required = false)String key,@RequestParam(value = " ...

  2. spring Autowired(required = false) 说明

    当候选 Bean 数目不为 1 时的应对方法    在默认情况下使用 @Autowired 注释进行自动注入时,Spring 容器中匹配的候选 Bean 数目必须有且仅有一个.当找不到一个匹配的 Be ...

  3. SSM始用 @Autowired(required = false)的一个坑

    今天在写东西时候,一个小问题卡了好久,,,我就是要引入两个dao层接口判断,然而一直报500空指针异常,,另一个服务一直找不到,苦恼了很久.才发现原来是注解始用的问题..貌似是一个@Autowired ...

  4. Java项目:宠物商城系统(java+Springboot+Maven+mybatis+Vue+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclis ...

  5. Java项目:嘟嘟二手书商城系统(java+JSP+Springboot+maven+mysql+ThymeLeaf+FTP)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能: 主页显示商品: 所有二手书商品展示,可进行商品搜索: 点击商品进入商品详情页,具有立即购买和加入购物车功能,可增减购买 ...

  6. Java项目:生活旅行分享平台(java+Springboot+JPA+Jsp+Html+js+Ajax+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclisp ...

  7. Java项目:前台后台玩具商城系统(java+JSP+SSM+Springboot+Jsp+maven+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统主要实现的功能有: 网上商城系统,前台+后台管理,用户注册,登录,商品展示,分组展示,搜索,收货地址管理,购物车管理,添 ...

  8. Java项目:实现个人博客系统(java+springboot+mybatis+redis+vue+elementui+Mysql)

    源码获取:博客首页 "资源" 里下载! springboot+mybatis+前端vue,使用前后端分离架构实现的个人博客系统,共7个模块,首页,写博客,博客详情页,评论管理,文章 ...

  9. Java项目:平行志愿管理系统(java+Springboot+Maven+mybatis+Vue+Mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 本系统功能包括: 系统管理,招生计划,学生管理,录取结果,自动分配,调剂管理等等. 二.项目运行 环境配置: Jdk1.8 + ...

最新文章

  1. Homebrew--MacOSX下的套件管理器
  2. Quartz.NET和Log4Net三种输出[转]
  3. js regex var highlight
  4. 【使用递归玩通关汉诺塔游戏】算法01-递归(斐波那契数列、汉罗塔问题)-java实现
  5. 虚函数和抽象函数的区别
  6. java--jdbc
  7. HDU5391威尔逊定理
  8. 登录与注册 艺术与业务 的结合
  9. 常用位操作以及相关原理
  10. 使用 TensorFlow 做文本情感分析
  11. 中文只占一个字符_男人宠妻的三大表现,就算只占一个,你都是嫁对了人!
  12. [复习]Python基础回顾
  13. python微软产品一般都一个25位的序列号_Python易错点6
  14. linux 录制视频mp4,Kazam下载使用:优秀的Linux截图与屏幕视频录制软件
  15. [渝粤教育] 九江职业技术学院 客户关系管理 参考 资料
  16. MATLAB/Simulink当真,开环Buck、闭环Buck、双闭环Buck仿真;开环控制的半桥LLC谐振变换器,全桥LLC谐振变换器和电压闭环控制的半桥LLC
  17. u盘里的文件不见了怎么办?怎么恢复数据?
  18. mybatis使用truncate清空表
  19. 清华梦的粉碎—写给清华大学的退学申请 2005.9.22
  20. 深度学习笔记(3)——pytorch+TextCNN实现情感分类(外卖数据集)

热门文章

  1. word 设置标题和自动编号
  2. img 图片排列出现空白解决办法
  3. macOS Monterey 系统关闭SIP详细教程,超级简单!
  4. 由于找不到mfc140u.dll,无法继续执行代码?
  5. Window10系统下联想笔记本进入BIOS界面方法
  6. 中英文说明书丨艾美捷CD8α体内抗体相关研究方案
  7. 单片机 rs232 c语言,完全手册 51单片机C语言开发详解系列之第8章 串口通讯实战—RS232...
  8. 机器学习笔记(六)Boosting集成学习算法Adaboost和GBDT
  9. 视频编辑利器,截取视频中指定区域并实现静音操作
  10. js中乘法计算出现多位小数