最近做个接口,将数据打包格式化为json,传到第三方接口进行数据上传。
第一个问题就是日期格式,最笨最直接的方式就是在需要处理日期格式的成员变量的Get方法上打注解@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
,然后在Set方法上打注解@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
,要是返回的接口信息还是报错日期类型不对,那么就是格式化的日期没对应上接收数据的那边的格式,常用的会精确到时分秒,有些不会,根据实际情况来进行日期格式化,改动pattern 后面的日期格式就行。
第二个问题是遇到了返回信息报错是数字类型的,我也不知道为什么明明视图里面的price字段是number类型,但我这边使用mybatis进行自动接收打包为对应的实体类型的时候,成员变量price的Set方法中,要设置为String才能接收到获取的值,但我字段需要的是数字类型进行插入封装,那么只有进行改动了,在Set方法中,this调用的是当前实体的成员变量,一般自动生成的Set方法就是this.成员变量=获取到的值。根据实际情况进行改动如下:
public void setDrugPrice(String drugPrice) {
if (drugPrice.equals("-")||drugPrice.equals(" ")||drugPrice.contains(",")){
this.drugPrice = null;
}else{
BigDecimal price = new BigDecimal(drugPrice);
this.drugPrice = price;
}
}
这样修改之后,mybatis自动处理转化为对象不会报错,再转为json格式传输也没问题了。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/75134.html