【乐企文件生成工程】自定义文件路径分类支持(比如年/月/日)

> 有客户提出:我希望我的文件能按照```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)、效果视频(有需要的铁子,私我获取)、测试报文(仅需切换特定要素即可实现各类票种测试)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

还算善良_

如果对你的工作有所帮助,拜托啦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值