客户端服务器间的对象传输

时间:2013-08-09 00:06:11

标签: java iphone ios

我们为业务应用程序提供了一个Java客户端/服务器环境,我们希望为员工创建一个移动应用程序。

我们目前有一个在iOS(iPhone / iPad)上运行的原型客户端应用程序,它通过套接字与我们的Java服务器通信。通过字符串传递的简单查询,服务器响应发送字符串/字符串列表。但是,由于我们希望发送实际数据对象,即列表,地图等,这非常痛苦。

在服务器(java)和客户端(目标C)之间传输数据的最佳方法是什么? java服务器不是java EE ...因此没有涉及tomcat / servlets。从我在网上找到的,其他公司使用JSON来实现这一目标。我真的不确定如何去做这件事,或者说那里有最好的方法。

2 个答案:

答案 0 :(得分:0)

我会考虑提供一系列Web服务(基本上这些服务看起来像客户端的普通http GET或POST命令),它们可以使用XML或JSON格式的响应进行响应,这些要求取决于您在我想客户端(您可以同时使用参数作为请求的一部分来更改格式)

请查看Web Service了解详情。

基本要求是标准化您的输入和输出,就像您连接的客户端无关紧要

这也意味着您(可能)通过标准端口进行通信,并且所有麻烦的协议内容都会得到照顾。

可以使用Tomcat和servlet执行此操作,这会在客户端和数据库之间添加另一个层。这意味着进入的请求,尤其是修改数据库的请求,在访问数据库之前必须至少再传递一层,允许您集中业务逻辑(我假设您已经完成)并保护数据库

答案 1 :(得分:0)

搜索用Java和Objective-C实现的JSON序列化程序库。虽然JSON不是最紧凑或最有效的数据表示,但它在客户端和服务器之间使用是非常方便的格式,因为它无处不在且易于人类阅读。避免使用XML - 如果您拥有客户端和服务器组件,则会不必要地复杂化。

从长远来看,我同意将迁移到像Tomcat这样的容器中运行的标准Web服务最有意义。