1

我们的业务应用程序有一个 java 客户端/服务器环境,我们想为我们的员工创建一个移动应用程序。

我们目前有一个在 iOS(iPhone/iPad)上运行的原型客户端应用程序,它通过套接字与我们的 java 服务器通信。通过字符串传入的简单查询,服务器响应发送字符串/字符串列表。然而,这非常痛苦,因为我们想发送实际的数据对象,即 Lists、Map 等。

在服务器(java)和客户端(目标 C)之间传输数据的最佳方式是什么?java 服务器不是 java EE ......所以不涉及 tomcat/servlet。根据我在网上的发现,其他公司使用 JSON 来实现这一点。我不确定如何去做,或者那里最好的方法是什么。

4

2 回答 2

0

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

查看Web 服务以获取更多详细信息。

基本要求是标准化您的输入和输出,以便与您连接的客户端无关

这也意味着您将(可能)通过标准端口进行通信,并且所有杂乱的协议内容都会为您处理好。

可以使用 Tomcat 和 servlet 来做到这一点,这在客户端和数据库之间增加了另一层。这意味着进来的请求,尤其是修改数据库的请求,在到达数据库之前必须至少再经过一层,允许您集中业务逻辑(我假设您已经完成了)并保护数据库

于 2013-08-09T00:10:42.333 回答
0

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

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

于 2013-08-09T15:57:01.107 回答