【发布时间】:2012-04-03 00:13:41
【问题描述】:
在我的 Play Framework 应用程序中,有一堆模型依赖于其他模型,这会在尝试将它们序列化为 JSON 时产生潜在的危险。此外,每个模型中都有一些属性,我不想向客户端公开。最后但同样重要的是,web 客户端接收到的 moel 实例中的一些属性并不是真正来自数据库,而是来自第三方 Web 服务。
我听说可以在将对象呈现为 JSON 之前应用自定义序列化程序,但我想使用更简单的方法:DTO,然后将其序列化为 JSON。
问题是,我应该将每个模型类的 DTO 转换函数放在哪里?控制器?模型?也许最好的方法是遵循序列化器策略并创建一些转换类 - 每个模型一个?
我最大的担心是转换器也应该相互了解,因为显然我想先将 Author 实例中的每个 Book 实例转换为 DTO,然后也将 Author 转换为 DTO。这真的很糟糕吗?
【问题讨论】:
标签: java model-view-controller playframework dto