来自一名"预算紧张"程序员的求助信
各位大神们好啊!(拱手)
我是一名浙江的Java程序员,最近接了个"惊天地泣鬼神"的大项目——20G文件上传下载系统!客户要求还挺多,但最让我感动的是预算:整整100元人民币!这让我想起了当年1块钱能买10根冰棍的美好时光…
项目要求"亮瞎眼"
- 大文件处理:20G!比我硬盘里存的"学习资料"还大
- 文件夹上传:要保留层级结构,客户文件夹里可能有1000个文件,这是要把文件系统当俄罗斯套娃玩啊
- 加密传输:SM4/AES加密,比我女朋友的手机锁屏密码还复杂
- 断点续传:关了浏览器、重启电脑都不能丢进度,这要求比Windows更新还顽强
- 浏览器兼容:IE9!是的你没听错,这古董浏览器比我家的搪瓷杯年纪还大
- 全套服务:7×24小时技术支持、源代码、部署打包一条龙——预算100块还想享受阿里云级别的服务
我的现状(一把辛酸泪)
- 代码写不动了,年龄大了,Ctrl+C/V都快按不动了
- 没时间调试,白天996,晚上还得陪孩子写作业
- 网上代码都是"残缺版",文件夹上传功能跟我的发际线一样——稀疏
福利大放送(重点来了!)
加QQ群374992201送红包!1-99元!是的,比这个项目预算还高!
群里还有:
- 超级会员50%提成
- 代理商特权
- 项目合作机会
- 工作内推
算笔账:一个2万项目提成1万!10个就是10万!比BAT薪资还香!
代码片段展示(假装很专业)
前端伪代码(Vue3 + WebUploader)
// 文件上传组件(理论上)
const uploader = WebUploader.create({
// 配置项比我的需求列表还长
auto: false,
chunked: true,
chunkSize: 2 * 1024 * 1024, // 2MB
server: '/upload',
pick: '#picker',
resize: false,
duplicate: true, // 允许重复
threads: 3, // 并发数
prepareNextFile: true,
disableGlobalDnd: true,
fileNumLimit: 1000, // 文件数量限制
fileSingleSizeLimit: 20 * 1024 * 1024 * 1024 // 20GB
});
// 加密函数(梦想版)
function encryptFile(file, algorithm = 'SM4') {
return new Promise((resolve) => {
// 这里应该有复杂的加密逻辑
resolve(file); // 但预算只允许我原样返回
});
}
后端伪代码(SpringBoot)
@RestController
public class FileUploadController {
@PostMapping("/upload")
public String upload(@RequestParam("file") MultipartFile file) {
// 理论上这里应该有:
// 1. 文件校验
// 2. 加密处理
// 3. 分片合并
// 4. 断点续传逻辑
// 但预算只允许我...
return "上传成功!(理论上)";
}
// 文件夹层级保持(魔法方法)
private void keepFolderStructure(File folder) {
// 这里的代码比我的工资条还难实现
}
}
真诚的结语
各位大佬,我也知道这需求配上这预算简直就是"用买白菜的钱操卖白粉的心"。但人生嘛,总要有点梦想!万一真有天使投资人…啊不是,天使程序员愿意接单呢?
欢迎加群交流!红包真的在发了!(虽然可能已经被抢光了)
PS:如果有HR看到这段,我目前也在求职!能接受996(因为已经在做了),薪资要求比这个项目预算高那么一点点就行…
导入项目
导入到Eclipse:点南查看教程
导入到IDEA:点击查看教程
springboot统一配置:点击查看教程
工程

NOSQL
NOSQL示例不需要任何配置,可以直接访问测试

创建数据表
选择对应的数据表脚本,这里以SQL为例


修改数据库连接信息

访问页面进行测试

文件存储路径
up6/upload/年/月/日/guid/filename


效果预览
文件上传

文件刷新续传
支持离线保存文件进度,在关闭浏览器,刷新浏览器后进行不丢失,仍然能够继续上传

文件夹上传
支持上传文件夹并保留层级结构,同样支持进度信息离线保存,刷新页面,关闭页面,重启系统不丢失上传进度。

985

被折叠的 条评论
为什么被折叠?



