rest-java 16位数字数据类型

rest-java 16位数字数据类型,java,type-conversion,Java,Type Conversion,我想知道我的rest api中16位数字应该使用什么数据类型,因为Integer会返回400个错误请求,所以我不得不将其修改为另一个数据类型 org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver.HandletTypeMismatch未能绑定请求元素:org.springframework.web.method.annotation.MethodArgumentTypeMismatcheption异

我想知道我的rest api中16位数字应该使用什么数据类型,因为Integer会返回400个错误请求,所以我不得不将其修改为另一个数据类型

org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver.HandletTypeMismatch未能绑定请求元素:org.springframework.web.method.annotation.MethodArgumentTypeMismatcheption异常:未能将[java.lang.String]类型的值转换为所需的[java.lang.Integer]类型;嵌套异常是java.lang.NumberFormatException:对于输入字符串:“1111111111”


谢谢。

您只需将其接受为
字符串x
,然后将其转换为


您只需将其接受为
字符串x
,然后将其转换为


在我的实体、dao、dto和服务类中使用BigInt可以吗?在这种情况下,只要需要如此大的整数值表示,我看不出有什么害处。为什么不使用
long
?如果其保证不超过16位,那么长数据类型应该能够处理它。@n247s同意。但理想情况下,我希望它也可以从字符串转换而不是直接转换为字符串。@nullpointer直接转换到哪里?必须从字符串内部(整数类型失败)或外部(您的解决方案)解析它。无论如何,我认为OP有足够的信息来解决他的问题。在我的实体、dao、dto和服务类中使用BigInt可以吗?我认为在这种情况下没有什么坏处,只要需要如此大的整数值表示。为什么不使用
long
?如果其保证不超过16位,那么长数据类型应该能够处理它。@n247s同意。但理想情况下,我希望它也可以从字符串转换而不是直接转换为字符串。@nullpointer直接转换到哪里?必须从字符串内部(整数类型失败)或外部(您的解决方案)解析它。无论如何,我认为OP有足够的信息来解决他的问题。如果是数字,
BigDecimal
。如果它真的是指示性的,比如信用卡号,
字符串
。你可以简单地把它当作一个大整数。
长的
有什么问题吗?如果它是数字,
大十进制
。如果它真的是指示性的,比如信用卡号,
字符串
。你可以简单地把它当作一个大整数。长的
有什么问题?
BigInteger bigInt = new BigInteger(x);