【问题标题】:Spring MVC Jackson Json @JsonIgnore programmaticallySpring MVC Jackson Json @JsonIgnore 以编程方式
【发布时间】:2014-08-24 23:50:46
【问题描述】:

我有一个用 spring mvc 编写的 rest web 服务,并使用 jackson json 作为输出。要在序列化为 json 时忽略对象,我知道我可以使用 @Jsonignore 注释字段或类。但是我有一个要返回的对象数组,以及是否从最终的 json 输出中忽略某些对象取决于某些条件。例如:如果 object.hasTitle() == null 则忽略。

在 spring mvc 中实现这一目标的最佳方法是什么?

【问题讨论】:

  • 我不认为你正在尝试做的是解决问题的正确方法,因为 JSON 库负责以它的方式转换数据并且隐藏或过滤数据不应该发生在视图级别。请记住,您正在将一些数据加载到内存中并希望将它们丢弃,因此最好根本不加载它们(例如使用数据库中的查询条件),还要记住 JSON 对象在许多情况下,有关于列表中有多少条记录的分页信息,......这样你也会破坏分页信息

标签: json spring spring-mvc filter jackson


【解决方案1】:

一种解决方案应该是提供一个自定义(反)序列化程序,您可以在其中根据特定条件删除/添加字段。

Right way to write JSON deserializer in Spring or extend it

【讨论】:

    猜你喜欢
    • 2014-10-15
    • 1970-01-01
    • 2018-08-14
    • 1970-01-01
    • 1970-01-01
    • 2018-01-23
    • 2011-06-28
    • 1970-01-01
    • 2011-08-26
    相关资源
    最近更新 更多