如何在spring boot项目中利用腾讯云上传存储文件

注册与登录

1.访问 腾讯云官网,注册并登录账号。完成实名认证(这是必须的)。

2.开通COS服务

这里有指引,一步步照着点确定就行

在控制台首页搜索"对象存储"或"COS",进入产品页面,点击"立即使用"或"开通"。新用户通常有免费额度。https://console.cloud.tencent.com/cos

创建一个存储桶(Bucket)

这是最关键的一步,存储桶就是你存放文件的"柜子"。

在COS控制台,点击"创建存储桶"。

填写配置

  • 名称 :起一个全球唯一的名字,比如 yourblog-private-msg-1250000000(后面的数字是你的APPID)。

  • 地域:选择离你用户最近的地域,如"上海"。

  • 访问权限务必选择"公有读私有写"。这样,用户才能直接通过链接查看你发的图片/文件,而上传则需要你的授权(通过后端代码)。

其他选项保持默认即可,点击"创建"。

获取你的API密钥(SecretId & SecretKey)

复制代码
 ### 这是你的"账号密码",代码用它来获得操作COS的权限。
复制代码
 ### 点击网页右上角你的账号名称,进入"访问管理" -\> "API密钥管理"。

你会看到 SecretIdSecretKey。请像保护密码一样妥善保管,不要泄露或提交到公开的代码仓库(如GitHub)。

这里在创建密钥的时候一定要选择为下载csv文件,要不然后面很难写对密钥

3.代码测试上传是否成功

1)建立spring boot项目

2)在pom.xml文件里添加如下依赖

java 复制代码
<dependency>
    <groupId>com.qcloud</groupId>
    <artifactId>cos_api</artifactId>
    <version>5.6.227</version>
</dependency>

3)在test/java目录下编写测试文件

java 复制代码
import com.qcloud.cos.COSClient;
import com.qcloud.cos.ClientConfig;
import com.qcloud.cos.auth.BasicCOSCredentials;
import com.qcloud.cos.auth.COSCredentials;
import com.qcloud.cos.http.HttpProtocol;
import com.qcloud.cos.model.PutObjectRequest;
import com.qcloud.cos.model.PutObjectResult;
import com.qcloud.cos.region.Region;
import java.io.File;

public class CosSimpleTest {
    public static void main(String[] args) {
        // 1. 替换成你自己的信息(以下4项必须修改)
        String secretId = "AKIDug"; // 你的SecretId
        String secretKey = "eoq"; // 你的SecretKey(刚刚保存的那个长字符串)
        String region = "ap-shanghai"; // 存储桶地域,如上海是 ap-shanghai
        String bucketName = "wx4-133"; // 你的存储桶名称

        // 2. 准备一个要上传的本地测试文件(修改为你的文件绝对路径)
        File localFile = new File("C:/pages/pure/cat.jpg"); // 示例路径

        // 3. 初始化COS客户端
        COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);
        Region reg = new Region(region);
        ClientConfig clientConfig = new ClientConfig(reg);
        clientConfig.setHttpProtocol(HttpProtocol.https); // 使用HTTPS协议
        COSClient cosClient = new COSClient(cred, clientConfig);

        try {
            // 4. 指定文件上传到COS后的路径和文件名
            String key = "test-images/" + localFile.getName(); // COS中的文件路径
            PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile);
            PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);

            // 5. 如果成功,打印出文件的访问链接
            String url = "https://" + bucketName + ".cos." + region + ".myqcloud.com/" + key;
            System.out.println("✅ 上传成功!");
            System.out.println("✅ 文件访问URL: " + url);
            // 你可以复制这个URL到浏览器,看看能否打开图片

        } catch (Exception e) {
            System.err.println("❌ 上传失败,错误信息: " + e.getMessage());
            e.printStackTrace();
        } finally {
            // 6. 最后一定要关闭客户端
            cosClient.shutdown();
        }
    }
}

4)点击文件,运行测试

控制台显示文件上传成功

https://console.cloud.tencent.com/cos刷新,出现文件夹就证明测试成功了。

相关推荐
风为你而吹3 小时前
【传统自建idc和云计算的比较】
云计算
风为你而吹3 小时前
【超融合架构和传统云计算架构】
架构·云计算
风为你而吹4 小时前
【云计算和云原生】
云原生·云计算
是开心的栗子呀12 小时前
阿里云天池:预测二手车交易价格的机器学习项目-高效实现MAE低于500分
人工智能·机器学习·阿里云·ai·云计算
徐徐图之!1 天前
二、开始我们的运维之路&运维学习路线
linux·运维·云计算
Ydwlcloud1 天前
2025年腾讯云支付宝充值教程:步骤详解与支付渠道新思路
服务器·人工智能·云计算·腾讯云
@HNUSTer1 天前
基于 GEE 批量下载 NASA GDDP-CMIP6 气候数据:历史 + 未来情景(SSP245、SSP585)年度产品自动化生成与导出
云计算·数据集·遥感大数据·gee·气候·云平台·nasa
清蒸鳜鱼1 天前
腾讯云域名配置HTTPS完整指南:从0到1部署Flask应用
https·flask·腾讯云
wanhengidc2 天前
云手机的存储空间可以灵活扩展吗?
运维·服务器·科技·智能手机·云计算