日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

springBoot接入阿里云oss的實(shí)現(xiàn)步驟

瀏覽:213日期:2023-03-27 18:00:15

maven導(dǎo)入依賴(lài)

<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.15</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> <!-- 阿里云OSS --> <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <version>3.10.2</version> </dependency> </dependencies>

定義阿里云上傳結(jié)果實(shí)體

package com.example.demo.entity;import lombok.Data;/** * 阿里云上傳結(jié)果集 * * @author wushuai * @create 2021-01-25 */@Datapublic class AliyunOssResult { /** * code:200成功 * code: 400失敗 */ private int code; /** * 上傳成功的返回url */ private String url; /** * 提示信息 */ private String msg;}

yml設(shè)置阿里云oss參數(shù)

aliyunOss: endpoint: 'http://oss-cn-shanghai.aliyuncs.com' accessKeyId: 'xxxxxxx' accessKeySecret: 'xxxxxxx' bucketName: 'xxxxxx' urlPrefix: 'http://bucketName.oss-cn-shanghai.aliyuncs.com/'

yml設(shè)置上傳文件大小限制

spring: servlet: multipart: max-file-size: 20MB max-request-size: 20MB

工具類(lèi)封裝

package com.example.demo.util;import com.aliyun.oss.OSS;import com.aliyun.oss.OSSClientBuilder;import com.aliyun.oss.model.DeleteObjectsRequest;import com.aliyun.oss.model.DeleteObjectsResult;import com.aliyun.oss.model.GeneratePresignedUrlRequest;import com.example.demo.entity.AliyunOssResult;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;import java.io.InputStream;import java.net.URL;import java.util.Date;import java.util.List;@Componentpublic class AliyunOSSUtil { @Value('${aliyunOss.endpoint}') private String endpoint; @Value('${aliyunOss.accessKeyId}') private String accessKeyId; @Value('${aliyunOss.accessKeySecret}') private String accessKeySecret; @Value('${aliyunOss.bucketName}') private String bucketName; @Value('${aliyunOss.urlPrefix}') private String urlPrefix; /** * 上傳文件,以IO流方式 * * @param inputStream 輸入流 * @param objectName 唯一objectName(在oss中的文件名字) */ public AliyunOssResult upload(InputStream inputStream, String objectName) { AliyunOssResult aliyunOssResult = new AliyunOssResult(); try { // 創(chuàng)建OSSClient實(shí)例。 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 上傳內(nèi)容到指定的存儲(chǔ)空間(bucketName)并保存為指定的文件名稱(chēng)(objectName)。 ossClient.putObject(bucketName, objectName, inputStream); // 關(guān)閉OSSClient。 ossClient.shutdown(); aliyunOssResult.setCode(200); aliyunOssResult.setUrl(urlPrefix+objectName); aliyunOssResult.setMsg('上傳成功'); } catch (Exception e) { e.printStackTrace(); aliyunOssResult.setCode(400); aliyunOssResult.setMsg('上傳失敗'); } return aliyunOssResult; } /** * 刪除OSS中的單個(gè)文件 * * @param objectName 唯一objectName(在oss中的文件名字) */ public void delete(String objectName) { try { // 創(chuàng)建OSSClient實(shí)例。 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 刪除文件。 ossClient.deleteObject(bucketName, objectName); // 關(guān)閉OSSClient。 ossClient.shutdown(); } catch (Exception e) { e.printStackTrace(); } } /** * 批量刪除OSS中的文件 * * @param objectNames oss中文件名list */ public void delete(List<String> objectNames) { try { // 創(chuàng)建OSSClient實(shí)例。 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 批量刪除文件。 DeleteObjectsResult deleteObjectsResult = ossClient.deleteObjects(new DeleteObjectsRequest(bucketName).withKeys(objectNames)); List<String> deletedObjects = deleteObjectsResult.getDeletedObjects(); // 關(guān)閉OSSClient。 ossClient.shutdown(); } catch (Exception e) { e.printStackTrace(); } } /** * 獲取文件臨時(shí)url * * @param objectName oss中的文件名 * @param effectiveTime 有效時(shí)間(ms) */ public String getUrl(String objectName,long effectiveTime){ OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 設(shè)置URL過(guò)期時(shí)間 Date expiration = new Date(new Date().getTime() + effectiveTime); GeneratePresignedUrlRequest generatePresignedUrlRequest ; generatePresignedUrlRequest =new GeneratePresignedUrlRequest(bucketName, objectName); generatePresignedUrlRequest.setExpiration(expiration); URL url = ossClient.generatePresignedUrl(generatePresignedUrlRequest); return url.toString(); }}

controller接收調(diào)用

package com.example.demo.controller;import com.example.demo.util.AliyunOSSUtil;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.multipart.MultipartFile;import java.io.IOException;import java.util.UUID;@RestController@RequestMapping('/file')public class FileController { @Autowired private AliyunOSSUtil aliyunOSSUtil; @RequestMapping(value = '/uploadFile') public @ResponseBody Object uploadFile(@RequestParam(value = 'file', required = false) MultipartFile file, String strPath) throws IOException { String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf('.') + 1); String objectName = strPath+'/'+ UUID.randomUUID().toString()+'.'+suffix; return aliyunOSSUtil.upload(file.getInputStream(),objectName); }}

postman測(cè)試

springBoot接入阿里云oss的實(shí)現(xiàn)步驟

springBoot接入阿里云oss的實(shí)現(xiàn)步驟

到此這篇關(guān)于springBoot接入阿里云oss的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)springBoot接入阿里云oss內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Spring
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
成人污污视频| 69堂免费精品视频在线播放| 国产aⅴ精品一区二区四区| 国产精品一区二区三区四区在线观看| 日本一区二区三区视频在线看| 在线精品一区| 欧美一级一区| 婷婷视频一区二区三区| 911精品国产| 国产精品免费精品自在线观看| 国产精品探花在线观看| 欧美国产亚洲精品| 精品国产不卡| 蜜桃av在线播放| 亚洲天堂黄色| 综合一区av| 久久国产三级精品| 国产91在线播放精品| 久久美女性网| 国产精品婷婷| 欧美一区成人| 国产成人精品一区二区免费看京| 黄毛片在线观看| 国产一在线精品一区在线观看| 国产精品女主播一区二区三区| 丝袜美腿亚洲色图| 国产精品一区二区三区av麻| 日本免费久久| 男女性色大片免费观看一区二区| 国产探花一区二区| se01亚洲视频| 噜噜噜躁狠狠躁狠狠精品视频| 日韩精品乱码av一区二区| 麻豆成人91精品二区三区| 国产91精品对白在线播放| 日韩制服丝袜先锋影音| 国产精品亚洲欧美一级在线| 国产乱论精品| 人人精品亚洲| 香蕉久久夜色精品国产| 国产精品大片免费观看| 免费成人网www| 日韩av字幕| 日韩在线中文| 亚欧洲精品视频在线观看| 久久香蕉网站| 99在线精品免费视频九九视| 国产乱码精品一区二区三区四区| 欧美日韩高清| 中文字幕在线免费观看视频| av免费不卡国产观看| 国产乱人伦精品一区| 美女久久久久久 | 九九综合在线| 免费一二一二在线视频| 国产精品多人| 久久久91麻豆精品国产一区| 91久久黄色| 高清久久精品| 老司机免费视频一区二区| 亚洲一区成人| 日本在线成人| 丝袜美腿高跟呻吟高潮一区| 亚洲aa在线| 色爱综合网欧美| 亚洲中午字幕| 婷婷综合一区| 99精品99| 亚洲精品伦理| 久久狠狠久久| 日韩高清中文字幕一区二区| 日韩国产网站| 亚洲午夜视频| 欧美aaaaaa午夜精品| 清纯唯美亚洲综合一区| 久久久久国产精品一区三寸| 欧美精品中文字幕亚洲专区| 日本午夜大片a在线观看| 久久国产乱子精品免费女| 最新日韩av| 六月婷婷综合| 国产精品.xx视频.xxtv| 久久av综合| 日韩高清一区| 国内一区二区三区| 一二三区精品| 精品国模一区二区三区| 欧美在线资源| 免费在线亚洲| 国产精品91一区二区三区| 久久一区国产| 国产免费久久| 亚洲精品九九| 日韩av三区| 99成人在线视频| 欧美国产三级| 美女视频免费精品| 国产拍在线视频| 亚洲日产国产精品| 亚洲天堂av影院| 国产精品免费99久久久| 欧美中文字幕一区二区| 欧美片第1页| 亚洲精品一级| 美女福利一区二区三区| 日本视频一区二区| 亚洲涩涩av| 国产毛片久久| 欧美色图国产精品| 欧美日韩精品免费观看视完整| 99国产精品久久久久久久| 精品成av人一区二区三区| 国产欧美日韩一区二区三区四区| 天堂成人免费av电影一区 | 蜜臀精品久久久久久蜜臀 | 日本国产精品| av高清不卡| 精品视频高潮| 久久不见久久见中文字幕免费| 国产精品亚洲综合色区韩国| 国产精品一区二区精品视频观看| 久久国产婷婷国产香蕉| 久久国产精品免费一区二区三区| 青青草精品视频| 91精品日本| 国产精品一页| 精品亚洲自拍| 在线看片福利| 久久精品亚洲人成影院| 亚洲午夜黄色| 国产精品嫩草99av在线| 热久久国产精品| 亚洲v天堂v手机在线| 日本成人在线视频网站| 久久不见久久见中文字幕免费| 国产伊人久久| 日韩精品一卡| 国产午夜久久| 日韩免费精品| 你懂的亚洲视频| 日韩久久精品| 国产婷婷精品| 日本aⅴ精品一区二区三区| 国产免费久久| 日韩电影免费在线观看| 宅男在线一区| 亚洲免费一区三区| 国产另类在线| 亚洲一本视频| 精品一区欧美| 亚洲一级大片| 亚洲精选久久| 麻豆精品视频在线观看视频| 免费不卡在线视频| 久久精品一区二区国产| 国产欧美日韩| zzzwww在线看片免费| 国产精品对白| 精品视频国内| caoporn视频在线| 超碰成人av| 亚洲爱爱视频| 亚洲国产成人精品女人| 久久精品影视| 亚洲视频播放| 亚洲精品系列| 国产欧美一区二区三区精品酒店| 国产欧美欧美| 黄在线观看免费网站ktv| 国产剧情在线观看一区| 高清av一区| 一二三区精品| 国产一区二区三区视频在线| 国产精品hd| 91视频久久| 久久国产视频网| 国产精品大片| 在线观看视频免费一区二区三区| 国产精品乱战久久久| 亚州精品视频| 国产精品视频首页| 欧美中文一区| 136国产福利精品导航网址| 免费高清在线一区| 久久久久伊人| 国产精品婷婷| 精品国产一级| 中文字幕成人| 日韩一区二区三区在线免费观看| 亚洲无线观看| 国产日韩电影| 国产亚洲久久| 亚洲女同中文字幕| 日本国产欧美| 欧美久久精品一级c片| 精品中文在线| 色综合视频一区二区三区日韩| 亚洲一级少妇| 亚洲精品黄色| 欧美aa国产视频|