繁体   English   中英

通过TCP套接字将对象从Java服务器发送到android客户端

[英]sending objects through TCP socket from java server to android client

我本打算使用objectOutputStream,但听说这是不可靠的,因为不同的Java版本可能会以不同的方式反序列化对象。 关于“可怕的跨体系结构实践..”

那么我又如何在这些设备之间发送对象和数组,使接收端可以将适当的对象或数组数据拼凑在一起呢?

编辑:只需阅读您在做什么。 您可能不需要Web服务器。 由于Web服务器具有大量支持,因此很多人推荐一个。 您当然可以使用TCP或UDP在服务器和客户端之间进行通信。 如果要进行数据交换,则需要具有一些协议,并且这里的大多数人都会熟悉XML或JSON

如果您需要灵感,请尝试查看一些协议,例如FTP甚至Bittorrent

Web服务器的情况:

我写了一个Java Web服务器来完成大学作业。 如果您对TCP / IP有很好的了解,那么Web服务器实际上就非常简单。 尽管分散在网上各处执行此操作的代码有些困难,但难以理解到底是怎么回事,但是一旦完成,这还不错

您绝对应该签出HTTP的RFC,即使这些通常用法文来表达。 除此之外,在服务器上,您基本上可以逐行读取字符串,并且应该能够弄清楚在服务器上要做什么(示例GET /somefile.html HTTP / 1.0)。 只需在这些行上执行System.out.println,然后从那里开始。 客户端代码也是如此。 您还可以使用telnet查看Web服务器的功能

为了进行测试,我实际上建议您尝试使用常规的Web浏览器,例如Firefox,Chrome,IE,Safari,甚至curl脚本。 这是一项简单的测试,可以查看服务器是否正常运行

就数据交换而言,建议使用XML或JSON,主要是,如果您学习如何处理XML,则将获得100点经验值。 但是,要开始工作,您可以仅通过发送和接收“ Wazzzaaap”之类的文本开始。 Web浏览器还可以获取XML和JSON数据。

通过“ java服务器”,您使用哪种协议?

一种选择是RPC,它在java.rmi中定义

如果使用的是http,最简单的选择是在tomcat / jetty中实现一个小型servlet并使用Restful服务

数据格式可以是xml,json,bin等

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM