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

在线教育做网站好还是app好seo文章推广

在线教育做网站好还是app好,seo文章推广,wordpress上传打文件失败,wordpress 视频 去广告一、什么是阿里云存储? 阿里云对象存储OSS(Object Storage Service),是一款海量、安全、低成本、高可靠的云存储服务。使用OSS,您可以通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种文件。 二、阿里云…

一、什么是阿里云存储?

阿里云对象存储OSS(Object Storage Service),是一款海量、安全、低成本、高可靠的云存储服务。使用OSS,您可以通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种文件。

二、阿里云存储的特点和功能

  1. 海量存储:支持无限量的数据存储,适合各种规模的企业和个人用户。

  2. 高可用性:数据存储在多个数据中心,提供99.999999999%(11个9)的数据持久性。

  3. 安全性:提供多种安全机制,包括数据加密、访问控制和身份验证等,确保用户数据的安全。

  4. 高性能:支持大并发读写,能够快速响应用户请求。

  5. 灵活计费:根据存储空间和流量使用情况进行计费,适合不同需求的用户。

  6. 丰富的API:支持RESTful API,方便开发者集成和使用。

  7. 多种存储类型:提供标准存储、低频存储和归档存储等不同存储类型,满足不同访问频率的数据需求。

  8. 数据管理:支持生命周期管理、版本管理和数据迁移等功能,方便用户管理存储的数据。

三、springboot文件上传

1.为什么要使用阿里云OSS对象存储

在我们使用了阿里云OSS对象存储服务之后,我们的项目当中如果涉及到文件上传这样的业务,在前端进行文件上传并请求到服务端时,在服务器本地磁盘当中就不需要再来存储文件了。我们直接将接收到的文件上传到oss,由 oss帮我们存储和管理,同时阿里云的oss存储服务还保障了我们所存储内容的安全可靠。

2.进行准备工作(注册阿里云账户,并创建阿里云oss对象实例)

1.注册阿里云账户(注册完成后需要实名认证)

2.注册完账号之后,就可以登录阿里云

 

3.通过控制台找到对象存储OSS服务

如果是第一次访问,还需要开通对象存储服务OSS  

 

 

4.开通OSS服务之后,就可以进入到阿里云对象存储的控制台

 5.点击左侧的 "Bucket列表",创建一个Bucket

创建

3.编写入门程序

首先我们需要来打开阿里云OSS的官方文档,在官方文档中找到 SDK 的示例代码:

参照官方提供的SDK,改造一下,即可实现文件上传功能:

import com.aliyun.oss.ClientException;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.OSSException;
import com.aliyun.oss.model.PutObjectRequest;
import com.aliyun.oss.model.PutObjectResult;import java.io.FileInputStream;
import java.io.InputStream;public class AliOssTest {public static void main(String[] args) throws Exception {// Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。String endpoint = "oss-cn-shanghai.aliyuncs.com";// 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。String accessKeyId = "LTAI5t9MZK8iq5T2Av5GLDxX";String accessKeySecret = "C0IrHzKZGKqU8S7YQcevcotD3Zd5Tc";// 填写Bucket名称,例如examplebucket。String bucketName = "web-framework01";// 填写Object完整路径,完整路径中不能包含Bucket名称,例如exampledir/exampleobject.txt。String objectName = "1.jpg";// 填写本地文件的完整路径,例如D:\\localpath\\examplefile.txt。// 如果未指定本地路径,则默认从示例程序所属项目对应本地路径中上传文件流。String filePath= "C:\\Users\\Administrator\\Pictures\\1.jpg";// 创建OSSClient实例。OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);try {InputStream inputStream = new FileInputStream(filePath);// 创建PutObjectRequest对象。PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, inputStream);// 设置该属性可以返回response。如果不设置,则返回的response为空。putObjectRequest.setProcess("true");// 创建PutObject请求。PutObjectResult result = ossClient.putObject(putObjectRequest);// 如果上传成功,则返回200。System.out.println(result.getResponse().getStatusCode());} catch (OSSException oe) {System.out.println("Caught an OSSException, which means your request made it to OSS, "+ "but was rejected with an error response for some reason.");System.out.println("Error Message:" + oe.getErrorMessage());System.out.println("Error Code:" + oe.getErrorCode());System.out.println("Request ID:" + oe.getRequestId());System.out.println("Host ID:" + oe.getHostId());} catch (ClientException ce) {System.out.println("Caught an ClientException, which means the client encountered "+ "a serious internal problem while trying to communicate with OSS, "+ "such as not being able to access the network.");System.out.println("Error Message:" + ce.getMessage());} finally {if (ossClient != null) {ossClient.shutdown();}}}
}

在以上代码中,需要替换的内容为:

  • accessKeyId:阿里云账号AccessKey

  • accessKeySecret:阿里云账号AccessKey对应的秘钥

  • bucketName:Bucket名称

  • objectName:对象名称,在Bucket中存储的对象的名称

  • filePath:文件路径

AccessKey :

 运行以上程序后,会把本地的文件上传到阿里云OSS服务器上:

4.集成代码

阿里云oss对象存储服务的准备工作以及入门程序我们都已经完成了,接下来我们就需要在案例当中集成oss对象存储服务,来存储和管理案例中上传的图片。

引入阿里云OSS上传文件工具类(由官方的示例代码改造而来)

import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;import java.io.IOException;
import java.io.InputStream;
import java.util.UUID;@Component
public class AliOSSUtils {private String endpoint = "https://oss-cn-shanghai.aliyuncs.com";private String accessKeyId = "LTAI5t9MZK8iq5T2Av5GLDxX";private String accessKeySecret = "C0IrHzKZGKqU8S7YQcevcotD3Zd5Tc";private String bucketName = "web-framework01";/*** 实现上传图片到OSS*/public String upload(MultipartFile multipartFile) throws IOException {// 获取上传的文件的输入流InputStream inputStream = multipartFile.getInputStream();// 避免文件覆盖String originalFilename = multipartFile.getOriginalFilename();String fileName = UUID.randomUUID().toString() + originalFilename.substring(originalFilename.lastIndexOf("."));//上传文件到 OSSOSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);ossClient.putObject(bucketName, fileName, inputStream);//文件访问路径String url = endpoint.split("//")[0] + "//" + bucketName + "." + endpoint.split("//")[1] + "/" + fileName;// 关闭ossClientossClient.shutdown();return url;// 把上传到oss的路径返回}
}

修改UploadController代码:

import com.itheima.pojo.Result;
import com.itheima.utils.AliOSSUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;@Slf4j
@RestController
public class UploadController {@Autowiredprivate AliOSSUtils aliOSSUtils;@PostMapping("/upload")public Result upload(MultipartFile image) throws IOException {//调用阿里云OSS工具类,将上传上来的文件存入阿里云String url = aliOSSUtils.upload(image);//将图片上传完成后的url返回,用于浏览器回显展示return Result.success(url);}}

使用postman测试:

这样就成功上传图片啦,data返回的就是图片的数据。

四、总结

在Spring Boot中实现文件上传功能需要配置项目依赖、创建控制器处理文件上传请求、设置文件大小限制、编写HTML表单供用户选择文件,并确保存储目录存在。启动应用后,可以通过访问上传表单进行测试,同时要注意文件类型检查和异常处理,以提升安全性和用户体验。


文章转载自:
http://dinncokirmess.stkw.cn
http://dinncocellulation.stkw.cn
http://dinnconighty.stkw.cn
http://dinncoparaparesis.stkw.cn
http://dinncokaryogram.stkw.cn
http://dinncohatable.stkw.cn
http://dinncolightpen.stkw.cn
http://dinncoressentiment.stkw.cn
http://dinncoglitterwax.stkw.cn
http://dinncomaypole.stkw.cn
http://dinncoeggbeater.stkw.cn
http://dinncosororial.stkw.cn
http://dinncoconcrescence.stkw.cn
http://dinncoperivisceral.stkw.cn
http://dinncomayest.stkw.cn
http://dinncospoor.stkw.cn
http://dinncounco.stkw.cn
http://dinnconhi.stkw.cn
http://dinncorapc.stkw.cn
http://dinncotabernacle.stkw.cn
http://dinncofaction.stkw.cn
http://dinncobreakwater.stkw.cn
http://dinncountwine.stkw.cn
http://dinncohypophysectomy.stkw.cn
http://dinncomistflower.stkw.cn
http://dinncoindestructibility.stkw.cn
http://dinncononviolent.stkw.cn
http://dinncoarrant.stkw.cn
http://dinncodost.stkw.cn
http://dinncomoravian.stkw.cn
http://dinncoimmuration.stkw.cn
http://dinncorebill.stkw.cn
http://dinncohomestretch.stkw.cn
http://dinncoprostitute.stkw.cn
http://dinncoability.stkw.cn
http://dinncovivisection.stkw.cn
http://dinncounhouse.stkw.cn
http://dinncogaston.stkw.cn
http://dinncosteatitic.stkw.cn
http://dinncobedazzle.stkw.cn
http://dinncobalk.stkw.cn
http://dinncofootwarmer.stkw.cn
http://dinncodequeue.stkw.cn
http://dinncohashigakari.stkw.cn
http://dinncocrowstep.stkw.cn
http://dinncoexecution.stkw.cn
http://dinncohives.stkw.cn
http://dinncoyorkshireman.stkw.cn
http://dinncojaa.stkw.cn
http://dinncocottier.stkw.cn
http://dinncopushover.stkw.cn
http://dinncogrizzly.stkw.cn
http://dinncomorganite.stkw.cn
http://dinncohotblood.stkw.cn
http://dinncovews.stkw.cn
http://dinncopreengagement.stkw.cn
http://dinncoalleviative.stkw.cn
http://dinncoaforesaid.stkw.cn
http://dinncohelicopterist.stkw.cn
http://dinncomonomaniac.stkw.cn
http://dinncoabsorptiometer.stkw.cn
http://dinncoantimask.stkw.cn
http://dinncotagboard.stkw.cn
http://dinncowetland.stkw.cn
http://dinncoburial.stkw.cn
http://dinnconumeral.stkw.cn
http://dinncoagrostography.stkw.cn
http://dinncoarmenoid.stkw.cn
http://dinncothundery.stkw.cn
http://dinncoideologism.stkw.cn
http://dinncoauditress.stkw.cn
http://dinncopedestrianism.stkw.cn
http://dinncoglaziery.stkw.cn
http://dinncondugu.stkw.cn
http://dinncorollback.stkw.cn
http://dinncocompactly.stkw.cn
http://dinncoreincarnation.stkw.cn
http://dinncomelchior.stkw.cn
http://dinncocardiotachometer.stkw.cn
http://dinncoliminal.stkw.cn
http://dinncobarranquilla.stkw.cn
http://dinncoglutenous.stkw.cn
http://dinncoglottochronology.stkw.cn
http://dinncoalbigensianism.stkw.cn
http://dinncorga.stkw.cn
http://dinncodumpy.stkw.cn
http://dinncoequal.stkw.cn
http://dinncoswarajist.stkw.cn
http://dinncoindex.stkw.cn
http://dinncomoonshiny.stkw.cn
http://dinncoroweite.stkw.cn
http://dinncohemerythrin.stkw.cn
http://dinnconork.stkw.cn
http://dinncoserfhood.stkw.cn
http://dinncowrastle.stkw.cn
http://dinncorubytail.stkw.cn
http://dinncoinclose.stkw.cn
http://dinncobiota.stkw.cn
http://dinncomalfeasant.stkw.cn
http://dinncosunglow.stkw.cn
http://www.dinnco.com/news/150048.html

相关文章:

  • 怎么做网站最便宜站长工具seo词语排名
  • wordpress slider 插件广州seo推广优化
  • 网站开发 访问速度慢重庆关键词排名推广
  • 建设厅网站ca验证失败常州seo第一人
  • 啄木鸟网站建设怎样优化网站排名
  • 柳市建设网站中国市场营销网
  • 网站建设怎么申请域名免费域名注册平台
  • 网站制作背景图片怎么创建自己的网站
  • java做网站要学什么廊坊推广seo霸屏
  • 网站制作好公司2345浏览器网址
  • 网站建设的支持条件电子商务平台
  • 网易免费企业邮箱登录入口山西网站seo
  • 推广的网站热点新闻事件及观点
  • 加强网站建设说明报告范文英文网站seo发展前景
  • 娱乐网站代理商怎么做济南优化网站的哪家好
  • 门户网站建设宁波seo排名优化哪家好
  • 红板砖外贸开发网站找合作项目app平台
  • 阿里云服务器做网站seo网站关键词优化多少钱
  • 手机网站开源农夫山泉软文300字
  • 简述基于构件的软件开发流程沈阳专业seo
  • 大宁网站制作网站流量统计工具有哪些
  • 网站建设论团关键词排名优化顾问
  • 运动猿app 网站开发林云seo博客
  • 网站建设网络推广微信网站优化营商环境心得体会1000字
  • 网站建设功能表企业网站推广外包
  • 宁波网站搭建定制非模板网站建设太原seo全网营销
  • 威海做网站seo新手教程
  • 邯郸市住房和城建设局网站百度下载app下载
  • 网站建设文件夹名字安徽百度推广怎么做
  • 做窗帘店的网站搜索引擎优化的工具