当前位置: 首页 > 知识库问答 >
问题:

我想隐藏Jackson映射到JSON的对象的一些字段

林建本
2023-03-14
public class User {
    private String name;
    private int age;
    prviate int securityCode;

    // getters and setters
}
User user = getUserFromDatabase();

ObjectMapper mapper = new ObjectMapper();   
String json =  mapper.writeValueAsString(user);

我不想映射securitycode变量。是否有任何方法可以配置映射器,使其忽略此字段?

我知道我可以编写自定义数据映射器或使用流式API,但我想知道是否可以通过配置来实现?

共有1个答案

阴福
2023-03-14

您有两种选择:

>

  • Jackson研究字段的setters-getters。因此,您只需删除要在JSON中省略的字段的getter即可。(如果您在其他地方不需要getter。)

    或者,您可以在该字段的getter方法上使用Jackson的@jsonignore注释,结果JSON中没有这样的键值对。

    @JsonIgnore
    public int getSecurityCode(){
       return securityCode;
    }
    

  •  类似资料:
    • 问题内容: 我有一个User类,我想使用Jackson映射到JSON。 我使用-将其映射到JSON字符串 我不想映射变量。有什么方法可以配置映射器,使其忽略此字段? 我知道我可以编写自定义数据映射器或使用Streaming API,但我想知道是否可以通过配置来做到这一点? 问题答案: 您有两种选择: 杰克逊致力于田野工匠。因此,您只需删除要在JSON中省略的字段的getter。(如果您不需要在其他

    • 假设我有这样的物体 我正在使用RestTemboard类从URL中获取json,如下所示: 之后,我想使用jackson对象映射器将json字符串转换为一个对象 将实体类作为第二个参数传递 问题是我应该如何编写ExampleJson实体来处理get-Showed json?我试过这样上课,但似乎不管用。 我得到了这样一个例外:

    • 我使用http://jsonlint.com来验证JSON是否有效。因此,我要么需要更改JSON或代码,要么可能两者都需要。有什么想法吗?

    • 问题内容: 我有一个JSON响应,我需要将对应的JSON字符串映射到特定的Response类,是否有任何工具或框架可以做到这一点。 响应类为: Json响应字符串为{“ 0”:{“ 0”:“ Rockey”,“ 1”:“ John”}} 我将Apache CXF Framework与Jettison一起使用,因为JSON Provider还使用JAXB将数据连接到低带宽客户端。 请注意,我要将数字

    • 问题内容: 我在以下架构中具有json对象: 在这里,该字段包含一个嵌入的json对象,并且该对象的模式是动态的,并且每次都不同。 的对象是不同的API服务,以及不同的API服务的不同方法获得的原始输出。不可能将其映射到所有可能的值。 是否可能有如下所示的java类: 或者类似的东西,以便我可以接收基本架构并对其进行处理,然后将其发送到相关类,该类将转换为适当的预期类? 问题答案: 使用 您可以从

    • 我和jackson一起绘制地图,我有点迷茫。我的Json具有以下结构 我确实找到了很多处理数组的教程,但我在第一个标记“d”时就已经失败了。而且根本不需要所有的“_元数据”标记。 我创建了一个包含lastName等属性和一个集合附件的pojo。但我的代码在标记“d”或“_元数据”时总是失败 还有杰克逊的读者 任何提示都将不胜感激。 问候马蒂亚斯