前言
这是我学习JavaWeb半年来做的第一款自主开发的Web项目,从技术选型到数据库建模编码测试最后到部署到服务器。这个过程踩过很多的坑,自己动手做和看视频学习,真是不一样,光看不做会让你觉得这个东西真的很简单,没有写的必要。期间最常见的莫过于空指针异常,对象调用方法时,对象是空,这很多都是需要经验去堆积的。还有就是不同的数据库比如h2和mysql事务执行顺序是不一样的,同样的代码,换一个数据库就可能会报错,h2在事务貌似是栈结构,而mysql是队列,这只是我个人的猜测,并没有深入研究数据库的底层,为了适配多种数据库,我放弃了使用外键。还有controller接收参数问题等,前端后台都自己写,真的能发现很多问题,前后端分离和他人协作开发时,很多问题可能是你的前端,或者是你的后台小伙伴给你解决了。
功能介绍
支持秒传
支持视频音频播放、拖拽进度条、倍速播放等
支持图片预览,旋转,放大
支持多人一起上传,共享上传进度(例如a上传苍老师学习资料到50%,突然b也上传苍老师学习资料,b从51%开始上传,后面a又从52%)
安全下载机制,每一个下载操作,都是要经过权限认证的
内置springsecurity支持控制登录数,类似qq,挤人下线,保证安全性
拥有回收站,不怕误删
高效的垃圾回收机制
拒绝冗余数据,每份文件只存一份,高效利用磁盘空间
未来计划
增加在线压缩、解压缩
增加拖拽上传
增加上传文件夹
增加文件分享功能
增加远程下载
增加后台管理,可以查看设备状态和管理用户,文件等
增加webdav功能
所用技术
前端:Element UI、Vue CLI@3、Node.js、Webpack
后台:Spring Boot、Spring Data JPA、Spring Security
数据库 : MySQL、H2等关系型数据库
数据结构:递归算法,树的遍历和插入…
暂无评论内容