简单服务器表结构CREATETABLE`upload`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(64)CHARACTERSETutf8COLLATEutf8_binNOTNULLCOMMENT'filename',`code`varchar(32)CHARACTERSETutf8COLLATEutf8_binNOTNULLCOMMENT'UUID',`size`int(11)NOTNULLCOMMENT'文件大小',`type`varchar(32)CHARACTERSETutf8COLLATEutf8_binNOTNULLCOMMENT'文件类型',`save_address`varchar(255)CHARACTERSETutf8COLLATEutf8_binDEFAULTNULLCOMMENT'filesaveaddress',`add_time`datetimeNOTNULL,`update_time`datetimeDEFAULTNULLONUPDATECURRENT_TIMESTAMP,`deleted_id`int(11)NOTNULLDEFAULT'0',PRIMARYKE`id`),UNIQUEKEY`id_deleted`(`id`,`deleted_id`)使用BTREE,UNIQUEKEY`code_deleted`(`code`,`deleted_id`)使用BTREE)ENGINE=InnoDBAUTO_INCREMENT=1DEFAULTCHARSET=utf8mb4serviceTerminal部署:以docker容器方式部署,挂载宿主机目录,将mysql也放入容器中。日志文件采用自定义logback-spring.xml,每天根据info和错误级别定时输出和删除日志,每30天自动删除#!/bin/bashfind/root/upload/log/-mtime+30-name"*.log"-execrm-rf{}\;每天凌晨2点删除30天内的日志02***/project/upload/deleted.sh日志输出,docker挂载宿主机目录,按天输出,过滤错误在线地址:在线地址服务器文件上传:/itdfq/uploadPOST注意word文件最大不能超过5MB。上传保存到服务器的格式为:/project/upload/data,会自动在data文件夹下创建一个文件夹用于保存。命名格式为yyyyMMdd,保存地址可以在yml文件中配置。上传文件后,会返回一个代码测试。选择一个txt上传,使用postMan请求数据库信息如下:服务器保存地址如下:查看文件信息:/itdfq/getByCodeGET可以通过代码获取文件的原始名称、类型等相关信息file为文件下载示例:/itdfq/downByCodeGET参数为code,String类型,上传时返回浏览器即可直接下载。ClientTest中的http请求单元测试项目地址码云
