盘在线演示地址
源码地址
项目名称 | 源码地址 |
---|---|
丢丢 盘前端 | https://gitee.com/JavaerLi/ddisk-web |
丢丢 盘后台 | https://gitee.com/JavaerLi/ddisk-file |

前言
这是我学习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等关系型数据库
数据结构:递归算法,树的遍历和插入…
特别感谢
文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91513 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!