# 文件浏览 **Repository Path**: zhi_xin_qiantong/FileViewUtils ## Basic Information - **Project Name**: 文件浏览 - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-05-06 - **Last Updated**: 2025-12-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FileViewUtils 本仓库创建于:2024年5月06日 15:00 # 功能完成 图标: 完成 :heavy_check_mark: 未完成 :heavy_multiplication_x: 进心中 :heavy_minus_sign: | 功能 | 完成情况 | 备注 | |:---------:|:-----------------------:|:---------------:| | 文件上传 | 完成 :heavy_check_mark: | | | 拖拽上传 | 完成 :heavy_check_mark: | | | 复制 | 完成 :heavy_check_mark: | | | 剪切 | 完成 :heavy_check_mark: | | | 删除 | 完成 :heavy_check_mark: | | | 重命名 | 完成 :heavy_check_mark: | | | 新建文件 | 完成 :heavy_check_mark: | | | 新建文件夹 | 完成 :heavy_check_mark: | | | 图片预览 | 完成 :heavy_check_mark: | 完全模仿viewjs实现 | | 图片在浏览器中缓存 | 完成 :heavy_check_mark: | | | 歌曲播放 | 完成 :heavy_check_mark: | | | 歌词显示 | 完成 :heavy_check_mark: | | | 视频播放 | 完成 :heavy_check_mark: | | | 缓存媒体信息 | 完成 :heavy_check_mark: | 例如:视频进度,历史记录,音量 | | CRUD用户 | 完成 :heavy_check_mark: | | # 服务启动说明---很重要 java启动服务要关闭360 启动要给文件编码-Dfile.encoding=UTF-8,不然ffmpeg会报错 使用nssm创建成服务一定要注意当前登录的用户信息,一定要用当前的账户登录,不然也会出现和开发环境不同的执行结果 ## 用户信息 在任务管理器里面看用户看,就是当前的用户,nssm改成这个用户登录,创建出来的服务就和开发环境一样了,为了确认可以再去详细信息里面看软件运行的用户名 # 配置文件 放在程序根目录config下面 # 静态文件 放在程序根目录static下面 # 插件系统(不开发了) 放在程序根目录plugin下面 ## 开发后端插件 插件其实就是额外加载外部jar包的实体类到spring容器,所以添加了springbean注解的都会加入,从而实现插件 可以在开发的时候引入主程序中,方便开发 ```xml top.xzxsrq PluginTest 0.0.1-SNAPSHOT provided ``` 引入以后包扫描和基础路径不一定一致,所以要在启动类上添加包扫描 ```java @SpringBootApplication //@ComponentScan("top.xzxsrq.plugin") // 这里添加一个额外的包扫描 ``` **开发完成以后主程序注释这个依赖,同时注释掉主类额外的包加载,主程序就可以重新打包** **插件自己打包就行** ## 前端插件开发 ## 规则 一个插件一个目录 每一个目录下面静态文件也是放在static下面,然后放一个目录同名的jar包 - plugin - test1 - test1.jar // 这个会复制到页面static下的jarPlugin+插件名字 --- static/jarPlugin/插件名字 - static // 这个会复制到页面static下的pagePlugin+插件名字 --- static/pagePlugin/插件名字 - main.js // 这里main.js可以拿到主程序的pinia和route # UI https://github.com/un-pany/v3-admin-vite ### 如何用idea链接h2本地数据库 直接选中数据库文件右击new 选里面的 添加选中的数据源 核心的一步是配置h2的驱动包,要看项目里面引入的jar的版本,然后idea的驱动也选择这个版本 填入用户名和密码就可以连接上 # 歌词文件直接转视频 修改别人的仓库:https://github.com/zhangliangming/Lrc2Video.git ## 支持歌词格式 krc、hrc、ksc、trc, lrc是我修改的 ## 思路 通过解析歌词,然后绘画成图片,再由图片生成视频 图片生成在歌词文件目录下面同名目录下,同时生成一个6.txt让ffmpeg去解析拼接 # 添加下载类型 ## 主类继承:top.xzxsrq.web.download.CommonD 主类一定要重写`webRunFunc`和`webRunFuncParams`, webRunFunc这个是程序入口 webRunFuncParams这个是参数 ## 下载类继承:top.xzxsrq.web.download.DownloadThread 下载一定要重写 `getDownloadInfo`:且里面一定要返回主类的`downloadTaskId`信息, 其他信息可以自己加,最好加上`pageInfo`信息 `createProcess`: 创建进程的方法也要重写 `showProcessLog`:显示进度的方法重写看自己了,VideoDT就重写读取信息写入进度 创建子类的时候,download里面的数据都要记得初始化,不然会报错 wangYiYunDownloadDT.setSavePath(saveDir); wangYiYunDownloadDT.setPageInfo(new PageInfo()); wangYiYunDownloadDT.setDownloadType(this.getDownloadType()); wangYiYunDownloadDT.setDownloadId(this.downloadTaskId);