> 有客户提出:我希望我的文件能按照```yyyy/mm/dd```的方式分类存储,你的工程是否支持呢?
>支持!必须支持!话不多说,上代码吧,简简单单。
找到文件上传的方法
/*** 上传文件** @param bucketName bucket名称* @param objectName 文件名称* @param stream 文件流* @param contextType 文件类型* @return* @throws Exception*/String putObject(String bucketName, String objectName, InputStream stream) throws Exception;
修改文件存储前缀
/*** 上传文件** @param bucketName bucket名称* @param objectName 文件名称* @param stream 文件流* @param size 大小* @param contextType 类型* @throws Exception* @see <a href="http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/PutObject">AWS* API Documentation</a>*/public String putObject(String bucketName, String objectName, InputStream stream, long size,String contextType) throws Exception {//桶不存在 创建createBucket(bucketName);byte[] bytes = IOUtils.toByteArray(stream);ObjectMetadata objectMetadata = new ObjectMetadata();objectMetadata.setContentLength(size);objectMetadata.setContentType(contextType);ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);// 获取当前日期并格式化为 "YYYY/MM/dd" 格式LocalDateTime now = LocalDateTime.now();DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd");String datePrefix = now.format(formatter);// 将日期前缀添加到对象名称中objectName = datePrefix + "/" + objectName;// 上传amazonS3.putObject(bucketName, objectName, byteArrayInputStream, objectMetadata);return getObjectURL(bucketName, objectName, 7);}
请求文件生成服务接口,测试效果
好啦,年月日的存储就是这样加一下存储路径就完美支持啦~🎉。
乐企文件生成,是对接乐企不可或缺的一环,有这部分需求的老板们,请疯狂滴滴我~
代码高度内聚,扩展性嘎嘎强,二开绝对友好!
工程包含文件生成以及存储;支持多类票种!满足您的各类场景。
远程支持工程部署,提供部署文档(Linux、win)、效果视频(有需要的铁子,私我获取)、测试报文(仅需切换特定要素即可实现各类票种测试)