将com.couchbase.client.java.document.json.JsonObject转换为com.google.gson.JsonObject的最佳方式是什么,反之亦然?
答案 0 :(得分:0)
目前我正在以下列方式进行。
public RawJsonDocument put(final String key, final JsonObject googleJsonObject) {
return bucket.upsert(RawJsonDocument.create(key, googleJsonObject.toString()));
}
public String get(final String key) {
RawJsonDocument d = bucket.get(RawJsonDocument.create(key));
if ( d != null ) {
return d.content().toString();
}
return null;
}
参考:https://forums.couchbase.com/t/how-to-convert-a-java-object-to-jsonobject-type-of-couch-base/4255
答案 1 :(得分:0)
还有另一种方式。
SmtpEmail
但比RawJsonDocument慢。
基准模式Cnt得分误差单位
MyBenchmark.testJsonDocument thrpt 200 81285.574±1972.377 ops / s MyBenchmark.testRawJsonDocument thrpt 200 148449.285±3639.312 ops / s
答案 2 :(得分:0)
另一种方式
public JsonStringDocument put(final String key, final JsonObject googleJsonObject) {
try {
JsonStringDocument document = JsonStringDocument.create(key, googleJsonObject.toString());
return bucket.upsert(document);
} catch (Throwable th) {
return null;
}
}
public String get(final String key) {
JsonStringDocument d = bucket.get(JsonStringDocument.create(key));
if (d != null) {
return d.content().toString();
} else {
return null;
}
}
public String get(final String key) {
JsonStringDocument d = bucket.get(JsonStringDocument.create(key));
if (d != null) {
return d.content().toString();
} else {
return null;
}
}
这三者中最好的。但我仍然在寻找更好的选择。