电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

SpringBoot整合阿里云OSS對象存儲服務實現文件上傳

瀏覽:2日期:2023-03-18 10:00:35
1. 準備工作:

一、首先登錄阿里云OSS對象存儲控制臺創建一個Bucket作為你的存儲空間。二、創建Access Keyan按要求創建進行,這里的方法步驟我就不展現出來了,你們可以自行查詢阿里云文檔,這個獲取值本身就不難。重點:記下你的AccessKey ID、AccessKey Secret以及你剛才創建的Buacket名字BucketName。

2. 配置:

在pom里引入oss要用的依賴

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

在application.yml里面添加配置文件

# 定義的端口號server: port: 8080aliyun: oss: #yourEndpoint填寫Bucket所在地域對應的Endpoint,可在創建好的Bucket概況頁查看。 endpoint: oss-cn-chengdu.aliyuncs.com# 以成都為例,Endpoint填寫為https://oss-cn-chengdu.aliyuncs.com #阿里云賬號AccessKey擁有所有API的訪問權限,風險很高。強烈建議您創建并使用RAM用戶進行API訪問或日常運維,請登錄RAM控制臺創建RAM用戶 accessKeyId: **********# 阿里云賬號AccessKey里所對應的AccessKey ID accessKeySecret: **********# 阿里云賬號AccessKey里所對應的AccessKey Secret bucketName: **********# OSS對象存儲空間名3. 詳細代碼:

第一步:創建一個service包,新建一個AliyunOssService.java

import org.springframework.stereotype.Service;import org.springframework.web.multipart.MultipartFile;import java.util.Map;@Servicepublic interface AliyunOssService { Map<String, Object> upload(MultipartFile file, String fileName);}

第二步:在service包里創建一個impl包,新建一個AliyunOssServiceImpl.java

import com.system.demo.service.AliyunOssService;import com.system.demo.util.FileUploadUtil;import org.springframework.stereotype.Service;import org.springframework.web.multipart.MultipartFile;import javax.annotation.Resource;import java.util.HashMap;import java.util.Map;@Service('aliyunOssService')public class AliyunOssServiceImpl implements AliyunOssService { @Resource private FileUploadUtil fileUploadUtil; @Override public Map<String, Object> upload(MultipartFile file, String fileName){//定義一個目錄(這里的目錄可根據自己實際情況自己拼接定義)String path = 'a'; //我這里就隨便定義一個a文件夾//拼接,這里將路徑和文件名拼接在了一起fileName = path + '/' +fileName;Map<String, Object> map =new HashMap<>();map.put('code', 200);map.put('msg', '查詢成功');map.put('data', this.fileUploadUtil.upload(file, fileName));return map; }}

第三步:創建一個util包,新建一個FileUploadUtil.java

import com.aliyun.oss.OSS;import com.aliyun.oss.OSSClientBuilder;import com.aliyun.oss.model.ObjectMetadata;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;import org.springframework.web.multipart.MultipartFile;import java.io.IOException;import java.io.InputStream;@Componentpublic class FileUploadUtil { @Value('${aliyun.oss.endpoint}') private String endpoint; @Value('${aliyun.oss.accessKeyId}') private String accessKeyId; @Value('${aliyun.oss.accessKeySecret}') private String accessKeySecret; @Value('${aliyun.oss.bucketName}') private String bucketName; public String upload(MultipartFile file, String fileName){ // 寫入文件 try {//獲取上傳的輸入流InputStream inputStream = file.getInputStream();//設置訪問地址是默認是預覽圖片ObjectMetadata meta = new ObjectMetadata();meta.setContentType('image/jpg');// 創建OSSClient實例OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);/*調用oss上傳到阿里云對象存儲oss----Bucket存儲空間第一個參數 bucket名稱第二個參數 文件名稱第三個參數 輸入流第四個參數 文件類型 */ossClient.putObject(bucketName, fileName, inputStream, meta);// 刪除文件。如需刪除文件夾,請將ObjectName設置為對應的文件夾名稱。如果文件夾非空,則需要將文件夾下的所有object刪除后才能刪除該文件夾。//ossClient.deleteObject(bucketName, 'a/');// 關閉OSSClient。ossClient.shutdown();//上傳成功后獲取文件路徑String url = 'https://' + bucketName + '.' + endpoint + '/'+ fileName;return url; } catch (IOException e) {e.printStackTrace(); }return null; }}

第四步:定義接口創建一個controller包,新建一個FileUpload.java

import com.system.demo.service.impl.AliyunOssServiceImpl;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.multipart.MultipartFile;import javax.annotation.Resource;import java.util.Map;@RestController@RequestMapping('oss')public class FileUpload { @Resource private AliyunOssServiceImpl aliyunOssServiceImpl; @RequestMapping(value = 'fileoss', method = RequestMethod.POST) public Map<String, Object> uploadOssFile(MultipartFile file, String fileName){return this.aliyunOssServiceImpl.upload(file, fileName); }}4. 測試:

首先運行啟動類,在Postman進行測試選擇請求方式:POST請求路徑:localhost:8080/oss/fileoss選擇Body-->form-data-----第一列數據:KEY為file,選擇類型為File,添加VALUE為自己想要上傳的文件;-----第二列數據:KEY為fileName,選擇類型為Text,添加VALUE為的文件名

如下圖:

SpringBoot整合阿里云OSS對象存儲服務實現文件上傳

添加完成后,點擊send,發起請求,等待返回數據,返回的JSON格式中data所對應的地址,為該文件的預覽地址。同時,你也可在你的OSS里面查看你的文件。

以上就是SpringBoot整合阿里云OSS對象存儲實現文件上傳的詳細內容,更多關于SpringBoot整合阿里云OSS的資料請關注好吧啦網其它相關文章!

標簽: Spring
相關文章:
主站蜘蛛池模板: 不锈钢搅拌罐_高速搅拌罐厂家-无锡市凡格德化工装备科技有限公司 | 淘趣英语网 - 在线英语学习,零基础英语学习网站 | sus630/303cu不锈钢棒,440C/430F/17-4ph不锈钢研磨棒-江苏德镍金属科技有限公司 | 防弹玻璃厂家_防爆炸玻璃_电磁屏蔽玻璃-四川大硅特玻科技有限公司 | 台湾Apex减速机_APEX行星减速机_台湾精锐减速机厂家代理【现货】-杭州摩森机电 | 紫外可见光分光度计-紫外分光度计-分光光度仪-屹谱仪器制造(上海)有限公司 | 浙江寺庙设计-杭州寺院设计-宁波寺庙规划_汉匠 | 垃圾处理设备_餐厨垃圾处理设备_厨余垃圾处理设备_果蔬垃圾处理设备-深圳市三盛环保科技有限公司 | 硅PU球场、篮球场地面施工「水性、环保、弹性」硅PU材料生产厂家-广东中星体育公司 | 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 镀锌钢格栅_热镀锌格栅板_钢格栅板_热镀锌钢格板-安平县昊泽丝网制品有限公司 | 快速门厂家-快速卷帘门-工业快速门-硬质快速门-西朗门业 | 真空上料机(一种真空输送机)-百科 | 深圳市超时尚职业培训学校,培训:月嫂,育婴,养老,家政;化妆,美容,美发,美甲. | 壹作文_中小学生优秀满分作文大全 | 不锈钢列管式冷凝器,换热器厂家-无锡飞尔诺环境工程有限公司 | 北京网站建设|北京网站开发|北京网站设计|高端做网站公司 | 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | 代办建筑资质升级-建筑资质延期就找上海国信启航 | 骨灰存放架|骨灰盒寄存架|骨灰架厂家|智慧殡葬|公墓陵园管理系统|网上祭奠|告别厅智能化-厦门慈愿科技 | 真空乳化机-灌装封尾机-首页-温州精灌 | 砂尘试验箱_淋雨试验房_冰水冲击试验箱_IPX9K淋雨试验箱_广州岳信试验设备有限公司 | 哈希PC1R1A,哈希CA9300,哈希SC4500-上海鑫嵩实业有限公司 | 金刚网,金刚网窗纱,不锈钢网,金刚网厂家- 河北萨邦丝网制品有限公司 | 皮带机_移动皮带机_大倾角皮带机_皮带机厂家 - 新乡市国盛机械设备有限公司 | 单机除尘器 骨架-脉冲除尘器设备生产厂家-润天环保设备 | 橡胶弹簧|复合弹簧|橡胶球|振动筛配件-新乡市永鑫橡胶厂 | 双菱电缆-广州电缆厂_广州电缆厂有限公司 | 铝合金风口-玻璃钢轴流风机-玻璃钢屋顶风机-德州东润空调设备有限公司 | 聚氨酯保温钢管_聚氨酯直埋保温管道_聚氨酯发泡保温管厂家-沧州万荣防腐保温管道有限公司 | Honsberg流量计-Greisinger真空表-气压计-上海欧臻机电设备有限公司 | 沈阳网站建设_沈阳网站制作_沈阳网页设计-做网站就找示剑新零售 沈阳缠绕膜价格_沈阳拉伸膜厂家_沈阳缠绕膜厂家直销 | 儿童乐园|游乐场|淘气堡招商加盟|室内儿童游乐园配套设备|生产厂家|开心哈乐儿童乐园 | 卫生人才网-中国专业的医疗卫生医学人才网招聘网站! | 钢板仓,大型钢板仓,钢板库,大型钢板库,粉煤灰钢板仓,螺旋钢板仓,螺旋卷板仓,骨料钢板仓 | 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 润东方环保空调,冷风机,厂房车间降温设备-20年深圳环保空调生产厂家 | 洛阳防爆合格证办理-洛阳防爆认证机构-洛阳申请国家防爆合格证-洛阳本安防爆认证代办-洛阳沪南抚防爆电气技术服务有限公司 | 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 福建珂朗雅装饰材料有限公司「官方网站」 | 粉末冶金注射成型厂家|MIM厂家|粉末冶金齿轮|MIM零件-深圳市新泰兴精密科技 |