七牛云如何上传图片
七牛云上传图片的方法:
1,注册七牛云账号,
2,创建一个存储空间bucket,创建的时候回送一个临时的测试域名,这个等上传工具类要用到 ,有效期30天,
3,写java工具类
public class upLoadFile { //...生成上传凭证,然后准备上传 这个是在注册的账户里面有个人中心那里的密钥管理 1 public static String accessKey = “h9r4Vz72dIAEL2PLSYXFEv39GmUOsw99y7wkbQQW”; public static String secretKey = “BWhiWbB7D-lWkI2bP2c6wBYRbak3MzmcUeoyTaNv”; // public static String bucket = “vehicle-picture”; //这个是创建的存储空间的名字 public static String bucket = “image-a”; //这个就是测试域名 创建的时候一般都会赠送一个测试域名 // public static String domainOfBucket = “http://qn.vwaiter.cn”; public static String domainOfBucket = “pn7fhqast.bkt.clouddn.com”; public static void main(String[] args) { getUrl(“FpMjfsJwwMDYC-IXjMIhWm9xiYt4”); } /** * 上传图片 * @param file * @return */ public static String uploadFile(MultipartFile file) { //构造一个带指定Zone对象的配置类 Configuration cfg = new Configuration(Zone.zone0()); //...其他参数参考类注释 UploadManager uploadManager = new UploadManager(cfg); //默认不指定key的情况下,以文件内容的hash值作为文件名 String fileName=null; String key = null; try { Logger.getLogger("start>>>>>>>>>>").info("图片上传"); byte[] uploadBytes=file.getBytes(); ByteArrayInputStream byteInputStream=new ByteArrayInputStream(uploadBytes); Auth auth = Auth.create(accessKey, secretKey); String upToken = auth.uploadToken(bucket); Response response = uploadManager.put(byteInputStream,key,upToken,null, null); DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class); //key为空时默认使用hash值作为key System.out.println(putRet.key); System.out.println(putRet.hash); fileName=putRet.hash; Logger.getLogger("end>>>>>>>>>>").info("图片上传"); }catch (QiniuException ex) { Response r = ex.response; System.err.println(r.toString()); } catch (IOException e) { e.printStackTrace(); } return fileName; } /** * 上传图片 * @param bytes 要上传图片的字节流 * @return */ public static String uploadFile(byte[] bytes) { //构造一个带指定Zone对象的配置类 Configuration cfg = new Configuration(Zone.zone0()); //...其他参数参考类注释 UploadManager uploadManager = new UploadManager(cfg); //默认不指定key的情况下,以文件内容的hash值作为文件名 String fileName=null; String key = null; try { Logger.getLogger("start>>>>>>>>>>").info("图片上传"); byte[] uploadBytes=bytes; ByteArrayInputStream byteInputStream=new ByteArrayInputStream(uploadBytes); Auth auth = Auth.create(accessKey, secretKey); String upToken = auth.uploadToken(bucket); Response response = uploadManager.put(byteInputStream,key,upToken,null, null); DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class); //key为空时默认使用hash值作为key System.out.println(putRet.key); System.out.println(putRet.hash); fileName=putRet.hash; Logger.getLogger("end>>>>>>>>>>").info("图片上传"); }catch (QiniuException ex) { Response r = ex.response; System.err.println(r.toString()); } catch (IOException e) { e.printStackTrace(); } return fileName; } /** * 字节数组上传 * @return */ public static String upLoadByte(byte[] data) { Configuration cfg = new Configuration(Zone.zone0()); UploadManager uploadManager = new UploadManager(cfg); String fileName=null; String key = null; try { byte[] uploadBytes = "hello qiniu cloud".getBytes("utf-8"); Auth auth = Auth.create(accessKey, secretKey); String upToken = auth.uploadToken(bucket); try { Response response = uploadManager.put(data, key, upToken); //解析上传成功的结果 DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class); System.out.println(putRet.key); System.out.println(putRet.hash); fileName=putRet.hash; } catch (QiniuException ex) { Response r = ex.response; System.err.println(r.toString()); try { System.err.println(r.bodyString()); } catch (QiniuException ex2) { //ignore } } } catch (UnsupportedEncodingException ex) { } return fileName; } /** * 生成加签访问url */ public static String getUrl(String key) { String finalUrl=null; String fileName = key; String encodedFileName = null; try { encodedFileName = URLEncoder.encode(fileName, "utf-8"); String publicUrl = String.format("%s/%s", domainOfBucket, encodedFileName); Auth auth = Auth.create(accessKey, secretKey); long expireInSeconds = 10800;//1小时,可以自定义链接过期时间 finalUrl = auth.privateDownloadUrl(publicUrl, expireInSeconds); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } System.out.println(finalUrl); return finalUrl; } /** * 生成加签访问url */ public static String getUrl1(String key) { String finalUrl=null; String fileName = key; String encodedFileName = null; try { encodedFileName = URLEncoder.encode(fileName, "utf-8"); String publicUrl = String.format("%s/%s", domainOfBucket, encodedFileName); Auth auth = Auth.create(accessKey, secretKey); long expireInSeconds = 10800;//1小时,可以自定义链接过期时间 finalUrl = auth.privateDownloadUrl(publicUrl, expireInSeconds); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } System.out.println(finalUrl); return finalUrl; } //删除上传到七牛云的图片 public static boolean deleteOnQn(String key) throws Exception { //密钥配置 try { Auth auth = Auth.create(accessKey,secretKey); Configuration configuration = new Configuration(Zone.autoZone()); BucketManager bucketManager = new BucketManager(auth,configuration); bucketManager.delete(bucket,key); } catch (QiniuException e) { e.printStackTrace(); throw e; } return true; }
4,需要的依赖架
<dependency> <groupId>com.qiniu</groupId> <artifactId>qiniu-java-sdk</artifactId> <version>7.2.11</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>3.3.1</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.6.2</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.qiniu</groupId> <artifactId>happy-dns-java</artifactId> <version>0.1.4</version> <scope>compile</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <!--七牛云图片服务器相关依赖结束-->
5,xml里面需要文件上传处理
<!--文件上传处理器 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="5000000"/> <property name="defaultEncoding" value="UTF-8"/> </bean>
6,写上传接口的controller和service以及serviceimpl,
更多相关技术文章,请访问PHP中文网!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用JavaSDK對接七牛雲資料處理:如何實現資料轉換與分析?概述:在雲端運算和大數據時代,資料處理是一個非常重要的環節。七牛雲提供了強大的資料處理功能,可以對儲存在七牛雲中的各種類型的檔案進行影像處理、影音處理、文字處理等。本文將介紹如何使用JavaSDK對接七牛雲的資料處理功能,並給出一些常用的程式碼範例。安裝JavaSDK首先,我們需要在專案中引入

抖音作為全球最受歡迎的短影片分享平台之一,已經吸引了數億用戶加入。在觀賞他人的精彩作品時,我們常常會被其中一些動態、有趣或有意義的瞬間所打動的。此時,我們不僅可以透過文字評論表達我們的觀點和想法,還可以透過圖片評論來更生動地表達我們的情感。那麼,在抖音上如何發表圖片評論呢?首先,打開抖音APP並進入自己感興趣的影片。接下來,我們需要根據手機作業系統的不

手把手教你使用Python對接七牛雲接口,實現音訊合併引言:在音訊處理的過程中,有時我們需要將多個音訊檔案合併成一個檔案。對於開發者來說,可以透過對接七牛雲接口,使用Python語言實現音訊合併功能。本文將詳細介紹如何使用Python對接七牛雲接口,實現音訊合併。步驟一:安裝依賴函式庫在使用Python對接七牛雲介面之前,我們需要先安裝對應的依賴函式庫。打開終端或命

手把手教你使用Python對接七牛雲接口,實現音頻切割在音頻處理領域,七牛雲是一個非常優秀的雲存儲平台,提供了豐富的接口來對音頻進行各種處理。本文將以Python為例,手把手教你如何對接七牛雲接口,實現音頻切割的功能。首先,我們需要安裝對應的Python庫,用於與七牛雲進行互動。在命令列中輸入以下命令進行安裝:pipinstallqiniu安裝完成後,我

七牛雲端資料處理管理指南:JavaSDK如何實現資料操作與分析?引言:隨著大數據時代的到來,資料處理和分析變得越來越重要。七牛雲作為一家專注於雲端儲存和資料服務的企業,提供了豐富的資料處理和分析功能,方便使用者處理和分析大量資料。本文將介紹如何使用七牛雲的JavaSDK來實現資料操作與分析。一、準備工作在開始之前,我們需要準備一些必要的工具和環境:申請七牛雲賬

用Go語言開發七牛雲端介面的整合方案引言:隨著雲端運算的普及,越來越多的企業開始將資料儲存在雲端。七牛雲作為一家主要的雲端儲存服務供應商,為用戶提供了穩定且有效率的物件儲存服務。本文將介紹如何使用Go語言來開發七牛雲介面的整合方案,並附上程式碼範例。一、概述七牛雲的介面提供了豐富的功能,包括檔案上傳、下載、刪除、檢視檔案清單等。為了方便開發者使用這些功能,我們可以使用G

學習Python實現七牛雲介面對接,實現圖片合併功能引言:近年來,隨著雲端運算技術的不斷發展,雲端儲存服務成為了解決資料儲存和備份的重要手段之一。七牛雲作為國內知名的雲端儲存服務供應商,為開發者提供了豐富的接口,方便開發者進行圖片等媒體資源的儲存與管理。本文將介紹如何使用Python語言對接七牛雲接口,並實現圖片合併功能。步驟一:安裝依賴模組在開始編碼之前,我們首

如何使用PHP將圖片從七牛雲端儲存轉換為Base64格式?圖片在網路傳輸和儲存中扮演了重要的角色。七牛雲端儲存是一個廣泛使用的雲端儲存平台,提供了穩定、有效率的圖片儲存服務。有時候,我們需要將七牛雲端儲存中的圖片轉換為Base64格式,在前端展示或其他用途上使用。在本文中,我們將介紹如何使用PHP將圖片從七牛雲端儲存轉換為Base64格式。步驟一:安裝七牛雲PHPS
