@关于@Pathvariable的参数允许为空(required = false)无法实现的问题

 @RequestMapping("/getToday/{planDateTime}")@ApiOperation(value = " 根据计划日期查询外部架次计划(不传日期默认为当天)", notes = " 根据计划日期查询外部架次计划(不传日期默认为当天)")public R getToday(@PathVariable(value = "planDateTime",required = false) String planDateTime) {

按照上面的代码,是希望如果不传planDateTime就为null,可以查询信息。但是发现,/getToday这个请求是过不来的,而且会报错。
首先@PathVariable不能为空,不能设置默认值,因为null对于url是无意义的。
此时有两种方法解决:
1、将@Pathvariable换成@RequestParams,但是这种方法和预期效果有些差别。
2、不能允许为空,但是可以变通。试了n次,发现/getToday和/getToday/{planDateTime}是两个不同的url,肯定是不能走同一个请求的。但是@RequestMapping是可以处理多个url的。于是将上面的@RequestMapping改成下面这样:

 @RequestMapping(value = {"/getToday/{planDateTime}","/getToday"},method = {RequestMethod.GET,RequestMethod.GET})@ApiOperation(value = " 根据计划日期查询外部架次计划(不传日期默认为当天)", notes = " 根据计划日期查询外部架次计划(不传日期默认为当天)")public R getToday(@PathVariable(value = "planDateTime",required = false) String planDateTime) {

这样就是可以的,此时的required = false就可以起作用了。

@Pathvariable的参数允许为空的问题的解决相关推荐

  1. python传参怎么校验数字_python 多个参数不为空校验方法

    python 多个参数不为空校验方法 在实际开发中经常需要对前端传递的多个参数进行不为空校验,可以使用python提供的all()函数 if not all([arg1, arg2, arg3]): ...

  2. Java 批量判断参数是否为空 判断集合

    判断参数是否为空,是因为在controller层会写很多if else 这样代码很冗余,封装一种方法可以判断参数是否为空,判断集合,是否为0,因为现在业务使用需要判断类型不是很多,如果多种类型可以考虑 ...

  3. 开始时间结束时间参数不能为空,时间间隔不能超过90天

    Controller层 public AjaxResult export(@RequestBody IncomingAccountQuery incomingAccountQuery){//判断时间是 ...

  4. Oracle 11G在用EXP 导出时,空表不能导出解决

    Oracle 11G在用EXP 导出时,空表不能导出解决 11G中有个新特性,当表无数据时,不分配segment,以节省空间 解决方法: 1.insert一行,再rollback就产生segment了 ...

  5. Smart3D空三不过的解决办法

    Smart3D空三不过的解决办法 问题1:空三完成后提示有大量照片未参与重建. 答案1-1:若测区无大面积同名点难以识别的地物地貌(例如水域.沙漠.玻璃等),出现大量照片未参与重建的情况一般是初始的& ...

  6. XPath匹配标签使用text()判断获取结果失败/为空的问题及解决方法

    XPath匹配标签使用text()判断获取结果失败/为空的问题及解决方法 参考文章: (1)XPath匹配标签使用text()判断获取结果失败/为空的问题及解决方法 (2)https://www.cn ...

  7. Nginx gzip参数详解及常见问题(已解决)

    Nginx gzip参数详解及常见问题(已解决) 参考文章: (1)Nginx gzip参数详解及常见问题(已解决) (2)https://www.cnblogs.com/xzkzzz/p/92243 ...

  8. win10修改系统配置处理器引导参数后,系统无限蓝屏解决办法

    win10修改系统配置处理器引导参数后,系统无限蓝屏解决办法 0:开机时先按f8进入安全模式,在进入命令提示符 1.进入 启动修复 的 命令提示符(最好是使用有管理员权限的,不过普通用户我也每试过), ...

  9. 做微信h5支付的统一下单接口开发,虽然已经生成了mweb_url支付链接,但是访问时出现错误提示:‘商家参数格式有误,请联系商家解决’,但是检查h5支付提交的参数,都没有错误。 微信h5支付开发错误

    做微信h5支付的统一下单接口开发,虽然已经生成了mweb_url支付链接,但是访问时出现错误提示:'商家参数格式有误,请联系商家解决',但是检查h5支付提交的参数,都没有错误. 后面看到官方文档, 说 ...

最新文章

  1. C#多态性-抽象类对象引用子类实例
  2. 9.4 均值标准化-机器学习笔记-斯坦福吴恩达教授
  3. php childnodes,小tips:HTML DOM中的children和childNodes属性
  4. 内存溢出与内存泄漏区别
  5. [Spring5]IOC容器_Bean管理_bean的作用域和bean的生命周期
  6. 让内核突破512字节的限制
  7. Linux的#和$区别
  8. 奇数阶幻方 java_N(奇数)阶幻方-java实现代码
  9. Javascript基础回顾 之(二) 作用域
  10. 贪吃蛇python语言代码_Python贪吃蛇简单的代码
  11. 【论文写作】JSP旅游网如何写概念设计
  12. Android Studio 解决 Cannot resolve symbol xxx 添加依赖后出现飘红
  13. 朱松纯:三读《赤壁赋》,并从人工智能的角度解读“心”与“理”的平衡
  14. Mac 有道词典 无法取词、划词
  15. 在php页面出现乱码的原因,html网页乱码原因与解决方法
  16. tree是不是动词_动名词到底是动词还是名词?
  17. Python数据分析师使用低代码Streamlit实现Web数据可视化方法——Plotly可视化基础篇
  18. PHPUnit 在 Windows下的安装
  19. 五金配件批发行业在线订单管理系统解决方案
  20. 大数据:数据仓库设计

热门文章

  1. 使用mysql-proxy读写分离时的注意事项_mysql-proxy中Admin Plugin的使用以及读写分离的问题...
  2. 建站+流量+运营,跨境电商的2021
  3. 吴恩达《机器学习》第一章:监督学习和无监督学习
  4. 吴恩达机器学习第五回——支持向量机
  5. 吴恩达机器学习学习笔记第一章:绪论初识机器学习
  6. 斯坦福吴恩达《机器学习》--增强学习
  7. arm 基于qcamera实现_面向HPC和笔记本市场 ARM发Cortex A78C增强版
  8. 计算机的社会应用PPT,《电子计算机的发展与应用》ppt说课稿信息技术七上.ppt...
  9. mysql每天1点执行存储过程_一天一点MySQL复习——存储过程
  10. Guava的介绍与使用示例