swagger和Java Long数据传递的一些问题

	1.近期在项目中要根据工号查询一些数据,但是我们数据库中的数据比如说是000001这种的,在swagger上传递的时候,接收的时候就变成了了1,前面的0自动被省略掉了,很是奇怪。
	2.在Java中,如果用long,int或者是Long,Integer声明一个变量,赋值为0开头的数字,最后你输出一下都会转换为8进制的数字。

	比较上述两种场景,swagger中如果传递0开头的数字,自己把开头的0给你去掉了,应该是为了避免出现这种传递的参数出现自动8进制转化的问题,但是还是会把原始的数字000001改为1进行传递,所以我们在使用swagger的时候如果要传递0开头的数字,最好是数据类型改为string,之后在后台判断一下是否为纯数字,验证通过之后进行crud。
  
	如果定义了long,int,Long,Integer,并且修改的地方非常多,只有极个别场景会出现这种情况的话,建议对数据进行左边补0的方式来操作数据,但是这个会有一个问题,该补几个0才是你所需要的数据。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值