在项目中第二次遇到根据时间段来做一个业务逻辑处理,这种情况下dubbo接口入参一般会有一个Date时间类。由于要测试接口的健壮性,往往需要本地调试接口,小菜我上次就是一时没弄明白本地调用接口的时间入参格式,最后使用的时间戳类型参数,被同事嘲笑了一把。
借此机会学习一下dubbo的时间类参数格式该如何设置:
首先,看一下如果使用不合法的时间格式会报错,错误的大体如下:
cause: java.lang.IllegalStateException: Failed to parse date 2018.03.01 00:00:00 by format yyyy-MM-dd HH:mm:ss, cause: Unparseable date: "2018.03.01 00:00:00"
其实错误信息中已经告诉我们合法的时间格式应该是怎样的,只是我没有仔细查看。
查找资料后得知,dubbo现在只支持yyyy-MM-dd HH:mm:ss一种,导致调用方必须把时间戳或者没有时分秒的字段,转换成这种格式才行。否则就会报错。