wangrognjie / document-archiving

SpringBoot3 练手项目,尽可能在伪需求中尝试优化

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

文档归档助手

这个项目想解决什么问题?

我公司的工作习惯是喜欢在微信、QQ、钉钉中发送文件,并且总会出现重复的文件,当真正需要查找某个文件的时候会出现很多问题:

  • 找不到文件,可能在某个人某天单独的聊天对话中,也可能在某个群中
  • 用一些文件搜索工具按名称搜索后发现很多类似文件,如"项目标书.docx","项目标书(1).docx",对于应该使用哪个一脸懵
  • 我想把某些重要文件自动备份到云盘,但又不想每次手动把文件另存到云盘同步目录
  • 跟公司大多数项目一样,这就是一个伪需求,我只是想练手而已

这个项目会涉及哪些技术

Java

没错,虽然这是一个日常工作相关的工具,但还是选择Java开发,就是为了练手。

Spring Boot 3 & JDK21

没错,虽然这是一个日常工作相关的工具,但还是会基于Spring Boot。Spring Boot2 虽然已不再维护,但公司还是停留在Spring Boot 2 + Java8,就用解决这个伪需求来练手吧

用到再更新

说点正经的

最近Java行情不好,面试要么被八股文,要么刷算法,问题都是高并发,JVM调优。会有大佬在平时的工作中涉及到高并发,JVM调优等,但大多数人其实都是在做业务,在写接口的CRUD,甚至设计模型都很少用到,更别说算法。这种情况下哪来的调优经验?

直到某一天看到 10亿行文本挑战赛,被震撼到了。简单来说就是从一个10亿行记录的文本文件(大约13GB)中读取记录,记录格式是某个气象站监测到的温度,气象站与温度数值用分号分隔。要求是计算这个文件中各个气象站温度的最大、最小、平均气温。用时最短代码只需要1.5秒

既然工作中没有可优化场景,那就创造需求来优化。

想实现什么效果

  • 快速扫描工作软件中下载的文件
  • 快速识别重复无用的文件
  • 把文件按照指定的规则归档到指定目录
  • 在想要查找文件时可以快速检索到文件
  • 使用尽可能少的内存
  • 想到了再更新

About

SpringBoot3 练手项目,尽可能在伪需求中尝试优化

License:MIT License


Languages

Language:Java 100.0%