龙空技术网

阿里云OSS文件管理分类解决方案

晓掌柜丶韶华 350

前言:

目前兄弟们对“阿里云服务器操作系统怎么选择文件夹类型设置”可能比较讲究,姐妹们都想要了解一些“阿里云服务器操作系统怎么选择文件夹类型设置”的相关内容。那么小编同时在网摘上网罗了一些关于“阿里云服务器操作系统怎么选择文件夹类型设置””的相关文章,希望同学们能喜欢,我们快快来学习一下吧!

一、背景

当前的项目中,文件管理使用的是阿里云的OSS。然后很大意的一点就是没有做文件分类管理(在一个总目录下)。于是就导致当前在文件管理及资源搜索时遇到很大阻力。

二、解决方案

进行文件分类管理:

① 每个模块分配单独文件件(如账单分配到bill)

② 二级目录细化到日期,文件细化到时间(/bill/20200306113726.jpg)

三、附上阿里OSS对文件夹的官方说明2.1、函数

上传Object一般使用putObject或者multipartUpload函数。例如文件名为123.jpg,那么ObjectName设置为123.jpg即可。

2.2、名称管理

在OSS中严格来说是没有文件夹的概念的,您在管理控制台看到的文件夹是为了方便管理,才以文件夹的方式显示出来。

实际上 abc/efg/123.jpg 这个路径的Object,以 / 为分隔符隔开放置,看起来就是在abc文件夹下的efg文件夹下放置的名为123.jgp

的一个文件。

2.3、组合说明

结合前两点,如果123.jgp要放在abc下显示,ObjectName参数设置为 abc/123.jpg

四、部分代码实现

    try {            ossClient = getOSSClient();            /* 生成图片名称 */            String originFileName = file.getOriginalFilename();            String suffix = originFileName.substring(originFileName.lastIndexOf(".")+1);            String key = sdf.format(new Date())+"."+suffix;            key = "bill/0306/" + key;            /* 上传文件流 */            ossClient.putObject(bucketName, key ,file.getInputStream());            return getImgUrl(key);        }catch (Exception e){            e.printStackTrace();        }finally {            if(ossClient!=null){                ossClient.shutdown();            }        }

Java

在写入KEY时根据规则动态创建KEY的属性值即可

五、实际效果如下

六、后续问题

历史数据处理暂未得出比较好的解决方案(应该有整库迁移的方案的)

1、历史数据按照当前规则修改

2、针对历史文件特殊处理

这个等待后续更新吧...

标签: #阿里云服务器操作系统怎么选择文件夹类型设置