将POJO vs Strings(json编码)传递给我的应用程序WebApi

时间:2013-07-19 22:41:53

标签: java android oop architecture

我有一些表格和数据库会用数据填充一些POJO。使用Json(gson)我将把数据上传到我的web服务器。服务器将发回一个最终放回到对象中的响应。

我的问题是,我应该将对象编码/解码为json,然后将字符串来回传递给我的WebApi类吗?或者我应该将我的WebApi类传递给我的对象并让它传回一个适当的响应对象(基于我调用的方法)。

所以,当我打电话给我的Api时,其中包含所有的http连接内容,它看起来就像这样。

myWebApi postSomeData( jsonData );  // 

jsonData应该是一个将被编码到myWebApi中的json字符串中的pojo,还是应该将其编码为json并传入一个字符串。

或者换句话说

String postSomeData( String jsonData){
web code here..
}

ResponsePojo postSomeData( PostData myData){
...
myMapper.MapFrom(myData); //converts pojo to json
...
webcode
}

在某些时候,需要上传的数据中会包含图片。

1 个答案:

答案 0 :(得分:0)

我建议使用json进行数据传输,它会使您的服务技术独立。

您可以使用flexjon在服务器端以非常直接的方式序列化java对象。

对于图像,无论如何都需要发布http POST,这应该与数据提交分开进行,因为图像上传中的错误不应导致数据丢失。通常,您将数据对象的id与上载的图像相关联(或者反向),因此您需要将对象插入到db并等待响应将依赖项ID插入到图像中。

最诚挚的问候, 齐德哈姆迪 http://1vu.fr