Java-客户端可以同时充当服务器吗?反之亦然?

Java-客户端可以同时充当服务器吗?反之亦然?,java,tcp,client-server,Java,Tcp,Client Server,我正在做一个项目,要求我写一个TCP/IP客户机-服务器程序。就其本身而言,这很简单,但我被要求做一些我以前从未做过的事情 我想知道,我是否可以编写一个Java客户机应用程序,向服务器发送命令并从服务器获得响应。此外,服务器能够向客户端发送相同的命令并接收类似的响应 简单地说,我被要求编写一个应用程序,其中客户端同时也是服务器(不是它自己的,而是它所连接的服务器),反之亦然 例如,如果客户端向服务器请求摄像机01的视频馈送,服务器将发送回确认。之后,如果服务器需要,它可以向客户端发送一个查看02

我正在做一个项目,要求我写一个TCP/IP客户机-服务器程序。就其本身而言,这很简单,但我被要求做一些我以前从未做过的事情

我想知道,我是否可以编写一个Java客户机应用程序,向服务器发送命令并从服务器获得响应。此外,服务器能够向客户端发送相同的命令并接收类似的响应

简单地说,我被要求编写一个应用程序,其中客户端同时也是服务器(不是它自己的,而是它所连接的服务器),反之亦然

例如,如果客户端向服务器请求摄像机01的视频馈送,服务器将发送回确认。之后,如果服务器需要,它可以向客户端发送一个查看02摄像头视频的请求,客户端也会相应地回复


这能做到吗如果是,请提供一些建议,因为我不确定如何处理它,我想可能是多线程。如果是,怎么做?!?一些帮助会很好

您可以在两侧开发多线程应用程序。在服务器上有两个线程,一个用于接收数据包,另一个用于发送数据包。在客户端,您可以执行相同的操作。

是的,您可以执行此操作。事实上,应用程序正是这样做的。您没有客户机或服务器,而是有一个对等机,它同时是客户机和服务器。您当然必须使用多线程来实现这一点。

您尝试了什么?你以前用Java做过网络吗?如果没有,请阅读。是的,我有。事实上,我在寻找一种避免多线程的方法。。。谢谢你的链接Jeffrey嘿谢谢。。。老实说,我在努力避免多线程哈哈哈。。。但我想这是很有名的。。。再次感谢你。。。那我就开始做这件事了…这正是我想要避免的。。。多线程,但我想,这是卓越的,需要做。。。非常感谢Bhavik,那我就开始工作了