【发布时间】:2013-06-04 20:48:07
【问题描述】:
在我的 Java servlet 中,每次发出某个请求时,我都会生成一个 64 位整数。然后我将这个长发送到两个方向:
1) 作为对 HTTP Get 调用者的 JSON 编码回复
2) 通过 PHP 脚本导入 MySQL 数据库
1) 像这样工作:数字被添加到 ArrayList(通过 Long.toString())。然后通过 Gson 库将此列表转换为 JSON 字符串。然后它会被 HTTP 响应的 printwriter 打印出来。
2) 运行 PHP 脚本,将 long 参数作为命令行参数传递。然后读取此参数并将其输入到 SQL INSERT INTO 查询中。
最后,这两个数字略有不同。在最后一个示例中,我得到以下信息:
1) -753774083758266880
2) -753774083758266887
我错过了什么?
【问题讨论】:
-
你调试过各个步骤吗?什么时候改变?
-
你能确定改变的确切位置吗?
-
我正在尝试弄清楚如何正确调试它。希望很快会有一些设置。
-
另外,在某处是否涉及到一些 JavaScript? JavaScript 无法正确处理
longs...(这就是为什么在我的 JSON Schema 演示站点中,我让 JavaScript 发送 并 将 JSON 显示为字符串!) -
不涉及 Javascript。
标签: java php sql rounding long-integer