现有一个业务需要将后台中启动的某个bat批处理文件所打印的内容实时的在web前端界面进行展示。
后台启动cmd使用的是 Process process = Runtime.getRuntime().exec("cmd /c start F:\\test.bat"); 方式,
其中的start是一个难点,考虑去掉,直接使用 cmd /c F://test.bat 不开启一个新的cmd窗口在后台执行,然后使用Process获取到 InputStream 但关键点在于**怎么将数据实时的刷新到HTML **?
有没有前端组件可用?还有一个难点在于 整个的cmd调用过程是开启新的线程异步执行的。
另外如果能解决以上难点还想请教一下能不能使用加 start 的命令启动?能的话又怎么获取cmd输出的内容?
昨天构思了一下,有很多难点没能突破,所以请教有开发过相关业务的大神,最好能加个好友聊一下,Thank you!!! QQ:1611826890

Java 实现将cmd窗口嵌入Web页面,或获取cmd窗口IO绑定到页面某个组件并进行实时刷新
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 庄粟 2018-12-07 09:30关注
其实java与cmd的通信你已经完成了(启动cmd获取返回内容),之后就是与html通信的问题了.
其实你不用想怎么把cmd绑定到页面上,因为这是不可能的.可以考虑一下怎么把cmd返回的内容返回到web页面上,这点不难,将cmd返回的数据保存在缓存中,然后可以进行页面与服务器的通信(如websocket),将信息返回到web页面上.解决 无用评论 打赏 举报