有时我使用jsonschema2pojo将一些json转换为java对象,但根据这些definitions,如果它是VO或DTO,我总是感到困惑。我确定这不是一个实体,但我不知道如何正确分类。
使用的目的,就是在对象中获取json。之后,我通过应用程序操纵这些数据。
答案 0 :(得分:0)
从技术上讲,it's a DTO直到您在类中添加其他业务逻辑,而不仅仅是JSON序列化注释。
我这样说的原因是它负责JSON对象的传输和反序列化
答案 1 :(得分:0)
我想说DTO是一个POJO,其设置的唯一目的是传输到数据源和从数据源传输。所以我想说如果你打算使用POJO只是为了传输数据源和从数据源传输,那么我会把它称为DTO。这会让我知道它的目的是什么。如果POJO将用于除了传输到数据源和从数据源传输之外的其他事情,那么我将把它称为POJO。
通常我不会再看到这些术语的用法了。现在我只看到POJO,他们通常会进入一个名为“model”或“domain”的包。如果我在项目中看到这些包,我知道这些是可用于业务逻辑或传输的POJO。
为什么它可能不是VO:VO是小物体,如坐标或金钱。它们是不可变的,不包含很多字段。所以不是真的需要多个字段,你需要JSONshema2pojo。虽然在解析大型JSON时,JSONschema2pojo可能会创建许多符合此定义的小类。
编辑:这都是主观的。并且只在这里提供意见。