2

我正在一个通过 HTTP 接收一些 JSON 对象的 Android 应用程序中工作。然后我将接收到的数据存储到数据库中。通过 http 接收的数据与存储在数据库中的数据不同,所以我有 2 层 - 传输层,带有传输对象,以及带有域对象的 DB 层。有些转换器可以将信息从 TO 转换为 DO,或者以其他方式。

我想知道以下哪种选择更好:

  1. 将接收到的数据解码为特定传输对象(使用 gson)- FooTO,然后使用 FooConvertor 转换为 FooDO,并将 FooDO 存储到 DB 中。

                         gson                   FooConvertor           DAO
    

    http content(string) ------> FooTO ----------------> FooDO --------> 数据库

  2. 将接收到的数据解码为通用 JsonEntity,然后使用 FooConvertor 将信息转换为 FooDO,并将 FooDO 存储到 DB 中。

                         gson                   FooConvertor           DAO
    

    http content(string) ------> JSONEntity --------------> FooDO --------> 数据库

一个重要的方面是我无法控制通过 http 接收的 json 对象的结构,它的结构可能随时改变,所以我想尽量减少对我的应用程序的更改影响。

4

1 回答 1

0

您应该使用GSON库,因为它更加结构化,并且在获取 JSON 期间创建的类可以重用于在数据库中存储相同的数据

于 2012-08-27T08:10:08.243 回答