我租用了一个云服务器作为主设备和从设备数据传输的媒介,我想通过java的socket和serverlet去写一个无界面的应用程序,不需要能被浏览器访问到(ps:所以不是web项目了 不知道是否还需要tomcat),只做接受从设备发来的数据,经过处理发给主设备。 我的一个困惑时,如何让应用程序不间断的运行,不在处理完一条指令完成后跳出程序。
ps:总结一下问题:一个在服务器上持续运行的应用程序,用于网络接受从设备数据并发给主设备。
关于#java#的问题:ps:总结一下问题:一个在服务器上持续运行的应用程序,用于网络接受从设备数据并发给主设备(操作系统-linux)
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- Treabhar 2023-03-19 18:51关注
基于GPT的解答
您可以使用Java中的Socket编程来实现此目的。下面是一些基本步骤:1.创建一个ServerSocket对象来监听端口,并接受从设备发送的数据。
2.在无限循环中,使用ServerSocket对象的accept()方法来接受客户端的连接,并获取客户端的Socket对象。
3.通过Socket对象获取输入流,读取从设备发送的数据,并进行处理。
4.处理完毕后,将处理结果发送给主设备。您可以通过Socket对象获取输出流,并将处理结果写入输出流中。
关闭连接并继续等待下一个连接。
为了使应用程序持续运行,您可以将上述步骤放在一个while循环中,并在循环中不断接受从设备的连接和处理数据。同时,您也可以考虑使用多线程来处理并发连接,以提高性能。
至于应用程序如何在服务器上持续运行,您可以将程序打包成可执行的JAR文件,并使用nohup命令在后台运行。例如,可以使用以下命令启动应用程序:
nohup java -jar your_application.jar &
这样,应用程序将在后台运行,并且在关闭终端窗口时不会终止。希望采纳。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
- ¥15 个人网站被恶意大量访问,怎么办
- ¥15 Vue3 大型图片数据拖动排序
- ¥15 Centos / PETGEM
- ¥15 划分vlan后不通了
- ¥15 GDI处理通道视频时总是带有白色锯齿
- ¥20 用雷电模拟器安装百达屋apk一直闪退
- ¥15 算能科技20240506咨询(拒绝大模型回答)
- ¥15 自适应 AR 模型 参数估计Matlab程序
- ¥100 角动量包络面如何用MATLAB绘制