【发布时间】:2017-08-25 18:19:17
【问题描述】:
我有一个类似的 POJO
public class Foo {
private double amount;
private String message;
public double getAmount() {
return amount;
}
public void setAmount(double amount) {
this.amount = amount;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
当我使用 Jackson 将这个 Foo 对象序列化为 JSON 字符串时,数量为 500,那么它的输出为 500.0。我想得到 500 而不是 500.0。
一种解决方案是将其类型更改为 int,但我无法修改该类。
我可以知道如何使用 Jackson 库来做到这一点吗?
【问题讨论】:
-
但是
500是500.0。 -
你的问题没有意义。当您反序列化时,您最终会得到 pojo 类的对象。那些有双重领域。因此,该值最终将成为双倍。因此:不清楚你在问什么。
-
没有库可以做你要求做的事情,因为大多数情况下,它没有任何意义。你得到你序列化的对象。然后你可以用它做任何你想做的事情,包括在需要时强制转换值。
-
您是否可能只想将此数字打印/显示为“500”?数字如何表示的问题?
-
也许混淆是因为他在谈论反序列化,但似乎他真的在谈论序列化为 JSON。
标签: java json serialization jackson