Gson - 每个属性都是字符串
Gson - every attribute as string
我已经通过 Azure
创建了到 DocumentDB
的连接,并且正在将一个对象保存到数据库中。
我的对象是 class Car
.
的实例
public class Car {
private long id;
private String name;
public Car(long id, String name) {
this.id = id;
this.name = name;
}
}
要将对象作为文档存储到 DocumentDB
,您必须从该对象创建一个 json 字符串。
问题出在调用 new Gson().toJson(new Car(15, "Audi"));
.
时
会return"{"id":15,"name":"Audi"}"
。
但是 DocumentDB
SDK 不接受这种格式。它抛出一个 JSON 异常,因为它需要以下格式:
"{"id":"15","name":"Audi"}"
.
我的问题是 Gson
是否能够 "surround" 每个带引号的属性以及如何实现?
谢谢。
您只需要将 id
成员更改为 String
类型即可。
顺便说一句,查看 Gson 文档,我没有看到任何将数字自动转换为带引号的字符串的选项。
我已经通过 Azure
创建了到 DocumentDB
的连接,并且正在将一个对象保存到数据库中。
我的对象是 class Car
.
public class Car {
private long id;
private String name;
public Car(long id, String name) {
this.id = id;
this.name = name;
}
}
要将对象作为文档存储到 DocumentDB
,您必须从该对象创建一个 json 字符串。
问题出在调用 new Gson().toJson(new Car(15, "Audi"));
.
会return"{"id":15,"name":"Audi"}"
。
但是 DocumentDB
SDK 不接受这种格式。它抛出一个 JSON 异常,因为它需要以下格式:
"{"id":"15","name":"Audi"}"
.
我的问题是 Gson
是否能够 "surround" 每个带引号的属性以及如何实现?
谢谢。
您只需要将 id
成员更改为 String
类型即可。
顺便说一句,查看 Gson 文档,我没有看到任何将数字自动转换为带引号的字符串的选项。