首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Object转换为javax.json.JsonValue?

如何将Object转换为javax.json.JsonValue?
EN

Stack Overflow用户
提问于 2019-12-04 14:52:37
回答 2查看 1.1K关注 0票数 1

我想修补一个JSON字符串。我得到了要打补丁的字段的“路径”,以及要打补丁的“值”。值可以是任何值、字符串、整数、浮点数、布尔值、数组或对象。

如何将对象转换为JsonValue?

javax.json.JsonPointer类中的“replace”方法需要JsonValue对象。

EN

回答 2

Stack Overflow用户

发布于 2019-12-04 16:29:12

使用This

代码语言:javascript
复制
    import com.google.gson.Gson;

    Statue statue = new Statue();//java class
    String json = new Gson().toJson(statue);
    response.setContentType("application/json");
    response.setCharacterEncoding("UTF-8");
    response.getWriter().write(json);

Json将采用java类结构。

票数 0
EN

Stack Overflow用户

发布于 2019-12-04 18:18:19

您可以使用Jackson,它可以与Maven一起添加到pom中,并指定以下依赖关系:

代码语言:javascript
复制
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.9.8</version>
</dependency>

通过import com.fasterxml.jackson.databind.ObjectMapper;,您可以使用ObjectMapper (使用Jackosn导入)。因此,如果您有一个类型为MyClass的对象obj,则可以执行以下操作:

代码语言:javascript
复制
MyClass objToCovert = new MyClass();
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(obj);

必须将json传递给您的方法,该方法将Json结构更新为patch。作为可以执行更新的方法的示例,我报告了以下内容(tag是关键字):

代码语言:javascript
复制
public static JsonStructure updateKeyValue(JsonStructure jsonStructure, String tag, String value) {
    JsonPointer jsonPointer = Json.createPointer("/" + tag);
    JsonString jsonStringValue = (JsonString) jsonPointer.getValue(jsonStructure);
    jsonStructure = jsonPointer.replace(jsonStructure, jsonStringValue);
    return jsonStructure;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59170427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档