有一台不能访问互联网的机器,但是有经常从这台机器里取文件的需求,自己的电脑和这台机器是同一局域网,但是自己的电脑有上网权限,这台机器没有,而且也不能直接开启共享文件夹访问到这台电脑,临时解决方案是从这台机器上开启热点,自己的电脑连上这个热点,连入同一局域网,当然此时就不能联网,用自己的电脑开共享文件夹来实现文件传输,但是这样操作比较复杂,每次要临时取文件时都要切换网络手忙脚乱。
于是就做了这样一个传输文件的程序,只要知道自己电脑的ip,直接在另一台机器上输入ip加端口号就能访问传输页面,只要是同一局域网,因为走的是内网,不需要互联网权限也能访问,所以做一个java单体web应用,开机自启比较适合这样的需求。
采用springboot后台,thymeleaf加载引擎,bootstrap5.1.1来构建页面ui,vue3.0.6来实现事件处理,以及ajax请求,使用了之前写过的java利用websocket实现分段上传大文件并显示进度信息websocket技术实现大文件传输。实现效果如下:
可以看到基本实现了大文件传输和文本数据传输的需求,满足自己的使用了,这样在实际工作中,应该会节省不少手忙脚乱的时间,提升工作效率~
开机自启也比较简单:
1.将程序打成jar包
2.把jar包放到一个固定文件夹 比如d://java_services/下面
3.在同目录下创建一个transferFiles.bat脚本,写入
start javaw -jar springboot-transferFiles-0.0.1-SNAPSHOT.jar
上面用的javaw不是java,这样就不会有cmd窗口弹出来,在后台运行。
4.将bat脚本生成快捷方式发送至桌面
5.按下 win + R,输入 “shell:startup” 打开 “启动” 文件夹,将快捷方式复制到 “启动” 文件夹
如此重启机器验证下,win10实测可以实现开机自启。