【问题标题】:Json or native pojo [closed]Json 或本地 pojo [关闭]
【发布时间】:2016-06-25 02:59:19
【问题描述】:

我和我的团队辩论过, 我有一个休息 ws 以 certian 格式返回一些东西 格式看起来像这样

{  
    Name:{  
        Inner:[  
            {  
                inner:[  
                    {  
                        inner:"hdjdjd"
                    }
                ]
            }
        ]
    }
}

在 ws 中,我只返回一次这种格式的数据。

我的团队认为我应该在响应方法中使用 jacksons 对象节点创建 json。 而且我认为我应该在 pojo 类中对格式进行建模,然后返回类 json 表示(使用杰克逊) 什么是正确的选择?

【问题讨论】:

  • 无论做什么都可以

标签: java json web-services jackson jsonresponse


【解决方案1】:

这是一个品味问题。

如果这个 JSON 格式没有使用一次,我建议你创建 DTO or POJO* 对象并返回它。

否则,返回一个jacksons对象节点,何乐而不为?

* 所有 DTO 都是 POJO,但并非所有 POJO 都是 DTO。 POJO的一个例子 不是 DTO 是包含状态和行为的业务类 (业务逻辑)。

【讨论】:

  • 因为代码的可读性要差得多,我没有创建返回格式的对象,而是创建了不是 java 原生的 json 对象,我认为 - new Format(.....) 而不是 new ObjectNode().put.put……等等……更易读,不是吗?
  • @user5723395,是的,在response方法中会更易读,更紧凑,但是需要新建一个不包含任何逻辑,只保留数据的类
  • 这就是DTO设计模式的思想
  • 我看到了使用 POJO 的以下优势 1) 类型检查,2) 响应结构的清晰性,3) 选择性反序列化能力。 4)当pojos被服务服务外部化时的代码可重用性。那为什么不是 POJO?
  • @Prasanna 我同意。不久前,我需要修改这个答案。
猜你喜欢
  • 1970-01-01
  • 2013-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多