如何在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刷新,出现文件夹就证明测试成功了。

相关推荐
CodeCaptain4 分钟前
阿里云ECS上配置Nginx的反向代理
nginx·阿里云·云计算
有谁看见我的剑了?9 小时前
VMware OVF Tool 工具安装学习
云计算
盛夏52020 小时前
Docker容器化部署SpringBoot+Vue项目:从零到一在阿里云宝塔面板的实践指南
阿里云·docker·云计算
拔剑纵狂歌1 天前
helm-cli安装资源时序报错问题问题
后端·docker·云原生·容器·golang·kubernetes·腾讯云
狐571 天前
2026-01-10-云计算问答题部分整理-期末复习
云计算·期末复习
2401_861277551 天前
中国电信星辰AI大模型有哪些主要功能
人工智能·云计算·软件工程·语音识别
程序员雄杰1 天前
腾讯云轻量应用服务器mac中ssh免密登录到服务器
macos·ssh·腾讯云
Akamai中国2 天前
基准测试:Akamai云上的NVIDIA RTX Pro 6000 Blackwell
人工智能·云计算·云服务·云存储
oMcLin2 天前
如何在 Ubuntu 22.04 LTS 上部署并优化 OpenStack 云计算平台,实现多租户虚拟化与弹性伸缩?
ubuntu·云计算·openstack
Tob管理笔记2 天前
建筑业如何精准开拓优质客户?技术驱动下的方法论与实践
大数据·云计算·数据库开发