我是Java的新手,我想用它做一些很酷的事情。作为第一步,我提出了为我家设置本地服务器的想法。我想要一个没有互联网运行的简单服务器,连接到家庭wifi的所有设备都可以查看
在稍后阶段,我计划用它做各种各样的事情,比如初学者一个简单的聊天应用程序。或者是在我的设备之间共享文件的门户。
在最终产品中,我想做流式传输。就像主机在服务器上播放音乐一样,所有连接的设备都可以转到页面并听同一音乐完全同步。或者直播视频!
目前这只是一个想法,我知道这种东西可能需要大量的研究工作,但是新的我真的很困惑从哪里开始。我只是需要建议/指导,如果我说的是可能的,我能做些什么才能到达我想要的地方。
提前致谢! :)
答案 0 :(得分:3)
如果你从头开始建设,这是一个漫长的旅程。您可以使用很多API来轻松实现这一目标。但是,我只是从非常基础的角度解释你,然后你可以继续前进并做更多的研究。
有三个主要概念可以实现您所说的内容:
在您的情况下,因为您想通过wifi将客户端连接到服务器。你的架构看起来像这样。
Client
Client ------------------- WIFI ---------------- SERVER
:
:
WIFI只是将您的请求转发给服务器并将响应从服务器转发给您的客户端。
现在,您希望实现聊天应用和直播等不同的功能。
聊天应用程序(https://www.codeproject.com/Articles/524120/A-Java-Chat-Application)
流媒体应用程序{音频/视频}(Live audio stream java)
以上是非专业术语的简要介绍。为了更好的 理解你必须阅读有关套接字编程的内容。有一次,你做到了 你可以做上面的项目。但是,如果你看到上面的链接,你可以 做你的项目,但你不会理解任何事情,更重要的是 如果失败,您可以进行故障排除。
答案 1 :(得分:2)
这是一个很好的项目。你会学到很多东西。
也许你可以做的一件简单的事情就是设置一个服务器来使用网络套接字广播信息。
你可以在互联网上找到更多,但这里有一些例子:
http://www.baeldung.com/java-websockets http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/HomeWebsocket/WebsocketHome.html
我不知道它是否能很好地播放广播数据,但我一直致力于聊天应用程序,而且对于简单的消息,它可以很好地完成工作。
答案 2 :(得分:1)
当然,你可以按照自己的想法行事,但正如你自己说的那样,需要很多RnD才能完成任务。
我建议你开始的方法是首先确定并将你的工作划分为不同的模块,例如: (文件共享,聊天,音乐商店等)
然后,对于每个模块,创建小的用例,例如 FOR文件共享:
.....等等。
我认为你对编程和Web应用程序有所了解:p
仅在上述用例完成后才开始开发工作。从一次使用一个用例开始,例如
显示目录内容
为该部署创建一个servlet / jsp,然后继续下一个,直到你完成所有的用例和模块。
答案 3 :(得分:0)
对于刚接触Java的人来说,这是一个非常雄心勃勃的项目。我建议您先从服务器开始,尤其是流媒体服务器。从基本的东西开始,了解数据类型,类和对象,数据结构,集合,类似的东西。学会使用调试器,不能强调那个的重要性。一旦您对这些概念感到满意,就可以转移到服务器上。到那时,您将更好地掌握语言,最重要的是将了解Java在查看堆栈跟踪时告诉您的内容。