当前位置: 首页 > wzjs >正文

永久的免费网站地址西安网络优化培训机构公司

永久的免费网站地址,西安网络优化培训机构公司,网站界面设计试题,重庆求建网站目录 准备工作账号注册开通OSS服务创建 Bucket 存储空间获取Bucket信息以及【Access密钥】 初始化一个SpringBoot项目使用阿里OSS服务1.创建一个配置类2.创建OSS工具类3.代码测试 🌟我的其他文章也讲解的比较有趣😁,如果喜欢博主的讲解方式&a…

在这里插入图片描述

目录

    • 准备工作
      • 账号注册
      • 开通OSS服务
      • 创建 Bucket 存储空间
      • 获取Bucket信息以及【Access密钥】
    • 初始化一个SpringBoot项目
    • 使用阿里OSS服务
      • 1.创建一个配置类
      • 2.创建OSS工具类
      • 3.代码测试

🌟我的其他文章也讲解的比较有趣😁,如果喜欢博主的讲解方式,可以多多支持一下,感谢🤗!

🌟了解 Lombok 请看: Lombok 入门到精通:告别冗余代码

其他优质专栏: 【🎇SpringBoot】【🎉多线程】【🎨Redis】【✨设计模式专栏(已完结)】…等

如果喜欢作者的讲解方式,可以点赞收藏加关注,你的支持就是我的动力
✨更多文章请看个人主页: 码熔burning

官网介绍:阿里云对象存储 OSS(Object Storage Service)是一款海量、安全、低成本、高可靠的云存储服务,提供最高可达 99.995 % 的服务可用性。多种存储类型供选择,全面优化存储成本。

OSS主要存储的就是一些非结构化数据,如:图片、视频、日志文件等。
在这里插入图片描述

它的优势我就不一一介绍了,毕竟是阿里的,直接进入文章的主题吧。

准备工作

账号注册

访问官网 阿里云官网 进行账号注册,这里我就不演示了。

开通OSS服务

登录成功了之后,点击控制台,按照下面图片步骤
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
首次使用的话需要开通权限
在这里插入图片描述

创建 Bucket 存储空间

Bucket 就是用来存储文件的基本容器
在这里插入图片描述
其他默认即可
在这里插入图片描述

获取Bucket信息以及【Access密钥】

重点是:【Bucket名称】、 【Endpoint(地域节点)】、【 AccessKeyId】、【 AccessKeySecret】,务必要记住,后面配置的时候要用到。

  • 【Bucket名称】的获取
    在这里插入图片描述

  • 【Endpoint(地域节点)】的获取
    按照箭头的指向,点击完概述之后,往下滑,找到 Endpoint(地域节点)
    在这里插入图片描述

  • 【 AccessKeyId】、【 AccessKeySecret】的获取
    将鼠标移动到个人头像,然后点击 AccessKey
    在这里插入图片描述

点击创建 AccessKey
在这里插入图片描述
使用手机号验证通过后,请务必保存好【 AccessKeyId】、【 AccessKeySecret】(仅显示一次)
在这里插入图片描述

这四个属性获取完成之后,接下来就可以来使用了

初始化一个SpringBoot项目

初始化过程我就不演示了

在这里插入图片描述

项目创建完成之后,根据官方文档,引入依赖:
在这里插入图片描述

<dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.17.4</version>
</dependency>

使用 JDK 9以上的版本别忘记引入下面的依赖:

<dependency><groupId>javax.xml.bind</groupId><artifactId>jaxb-api</artifactId><version>2.3.1</version>
</dependency>
<dependency><groupId>javax.activation</groupId><artifactId>activation</artifactId><version>1.1.1</version>
</dependency>
<!-- no more than 2.3.3-->
<dependency><groupId>org.glassfish.jaxb</groupId><artifactId>jaxb-runtime</artifactId><version>2.3.3</version>
</dependency>

然后配置文件参数,还记得上面获取的四个重要的参数吗,填入你自己的即可
在这里插入图片描述

使用阿里OSS服务

1.创建一个配置类

用于绑定application.yml中的OSS配置属性。

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;@Data
@Component
@ConfigurationProperties(prefix = "aliyun.oss")
public class OssProperties {private String endpoint;private String accessKeyId;private String accessKeySecret;private String bucketName;
}

2.创建OSS工具类

import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.OSSException;
import com.aliyun.oss.model.OSSObject;
import com.aliyun.oss.model.PutObjectRequest;
import com.gewb.configuration.OssProperties;
import jakarta.annotation.PostConstruct;
import jakarta.annotation.PreDestroy;
import org.apache.commons.io.FileUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;import java.io.File;
import java.io.IOException;
import java.io.InputStream;@Component
public class OssUtil {private OSS ossClient;private final OssProperties ossProperties;@Autowiredpublic OssUtil(OssProperties ossProperties) {this.ossProperties = ossProperties;}@PostConstructpublic void init() {// 初始化OSS客户端this.ossClient = new OSSClientBuilder().build(ossProperties.getEndpoint(),ossProperties.getAccessKeyId(),ossProperties.getAccessKeySecret());}@PreDestroypublic void destroy() {// 关闭客户端if (ossClient != null) {ossClient.shutdown();}}// --- 核心方法 ---/*** 上传文件到OSS** @param key    文件在OSS中的路径(例如:images/2023/test.jpg)* @param file   要上传的本地文件* @return 上传后的文件URL*/public String uploadFile(String key, File file) {checkBucketExist();ossClient.putObject(new PutObjectRequest(ossProperties.getBucketName(), key, file));return getOssUrl(key);}/*** 通过输入流上传文件*/public String uploadFile(String key, InputStream inputStream, long contentLength) {checkBucketExist();ossClient.putObject(ossProperties.getBucketName(), key, inputStream);return getOssUrl(key);}/*** 下载文件到本地*/public void downloadFile(String key, File localFile) {checkBucketExist();OSSObject ossObject = ossClient.getObject(ossProperties.getBucketName(), key);try (InputStream inputStream = ossObject.getObjectContent()) {FileUtils.copyInputStreamToFile(inputStream, localFile);} catch (IOException e) {throw new RuntimeException("下载文件失败", e);}}/*** 删除OSS文件*/public void deleteFile(String key) {checkBucketExist();ossClient.deleteObject(ossProperties.getBucketName(), key);}// --- 辅助方法 ---private void checkBucketExist() {if (StringUtils.isEmpty(ossProperties.getBucketName())) {throw new IllegalArgumentException("Bucket名称未配置");}}private String getOssUrl(String key) {return String.format("https://%s.%s/%s",ossProperties.getBucketName(),ossProperties.getEndpoint(),key);}// 异常处理示例(可按需扩展)private void handleOssException(OSSException e) {System.out.println("OSS错误码: " + e.getErrorCode());System.out.println("OSS错误信息: " + e.getMessage());throw new RuntimeException("OSS操作失败", e);}
}

3.代码测试

@SpringBootTest
public class SimpleOssTest {@Autowiredprivate OssUtil ossUtil;@Testpublic void testUpload() {// 1. 创建测试文件路径File testFile = new File("E:\code_photos\test.jpeg"); // 替换为你的测试文件路径if (!testFile.exists()) {throw new RuntimeException("测试文件不存在,请检查路径!");}// 2. 上传文件到OSSString ossKey = "test/" + testFile.getName();String url = ossUtil.uploadFile(ossKey, testFile);System.out.println("上传后的URL:" + url);// 3. 验证结果(简单断言)assert url != null && !url.isEmpty() : "上传失败,URL为空";assert url.contains(ossKey) : "上传路径不匹配";}
}

可以看到已经上传成功了:

在这里插入图片描述

其他功能大同小异,可以使用工具类中的方法来测试。

http://www.dtcms.com/wzjs/63914.html

相关文章:

  • 企业网站制作刘雯每日资讯
  • 响应式网站页面设计百度自助建站官网
  • 网站代运营公司有哪些外贸网站
  • wordpress参考上海优化关键词的公司
  • 西安做网站公司有哪些百度一下就会知道了
  • 城市建设者官方网站百度搜索推广费用
  • 渭南网站建设公司快速将网站seo
  • 网站优化布局排行榜网站
  • 品牌网站建设公司推荐seo宣传
  • 北京电力建设公司培训学校网站如何建站
  • 衢州网站建设兼职在线磁力搜索引擎
  • 建设网站服务器端环境要求淘宝产品关键词排名查询
  • 网站一般的后台seo人工智能
  • 莒南县建设局网站免费做网页的网站
  • 做网站带阿里云服务器多少钱上海有名网站建站开发公司
  • 做装修推广哪个网站最靠谱吗seo查询工具
  • 网站建设 增值税网盘资源搜索神器
  • 网站推广的方法网络游戏排行榜百度风云榜
  • 网站布局怎么写舆情网站直接打开怎么弄
  • 清远建设网站收录优美图片
  • 如何用自己电脑做网站测试猪肉价格最新消息
  • 网页游戏不花钱的厦门seo优
  • 公司网站建设管理意见成都营销推广公司
  • 做网站导航cms发广告平台有哪些
  • 制作一个论坛网站多少钱2019年 2022疫情爆发
  • 北京商业设计网站最近最新新闻
  • 织梦b2b网站模板站长工具在线平台
  • ui设计做兼职的网站搜索引擎网站排名
  • 苏州书生商友专业做网站网络营销外包顾问
  • 不在百度做推广他会把你的网站排名弄掉品牌营销策略研究