摘要:二實現(xiàn)步驟添加引用包模塊客戶端發(fā)現(xiàn)模塊監(jiān)控和管理生產(chǎn)環(huán)境的模塊添加應(yīng)用配置文件,默認(rèn),默認(rèn)打印日志添加簡單的上傳文件頁面添加上傳文件控制器上傳文件控制器。添加文件服務(wù)啟動類簡單文件上傳微服務(wù)采取或者頁面點擊實現(xiàn)文件上傳。
SpringCloud(第 023 篇)簡單文件上傳微服務(wù)采取curl或者頁面點擊實現(xiàn)文件上傳
-
一、大致介紹1、本章節(jié)主要搭建了一個簡單的頁面上傳Web控制器,主要為后序工作加入 zuul 微服務(wù)而做的準(zhǔn)備; 2、不過在本章節(jié)用命令上傳文件的時候,在windows命令窗口有時候會出現(xiàn)中文亂碼什么的,請注意看本文 FileUploadController 是如何解決這個亂碼問題的; 3、至于使用 curl 命令需要下載什么安裝包之類的,這個就請大家找找度娘怎么弄吧。二、實現(xiàn)步驟 2.1 添加 maven 引用包
2.2 添加應(yīng)用配置文件(springms-file-uploadsrcmainresourcesapplication.yml)4.0.0 springms-file-upload 1.0-SNAPSHOT jar com.springms.cloud springms-spring-cloud 1.0-SNAPSHOT org.springframework.boot spring-boot-starter-web org.springframework.cloud spring-cloud-starter-eureka org.springframework.boot spring-boot-starter-actuator
server: port: 8190 eureka: client: serviceUrl: defaultZone: http://admin:admin@localhost:8761/eureka/ instance: prefer-ip-address: true spring: application: name: springms-file-upload http: multipart: max-file-size: 20Mb # Max file size,默認(rèn)1M max-request-size: 20Mb # Max request size,默認(rèn)10M ##################################################################################################### # 打印日志 logging: level: root: INFO com.springms: DEBUG com.netflix: debug #####################################################################################################2.3 添加簡單的上傳文件頁面(springms-file-uploadsrcmainresourcesstaticindex.html)
2.4 添加上傳文件Web控制器(springms-file-uploadsrcmainjavacomspringmscloudcontrollerFileUploadController.java)Insert title here
package com.springms.cloud.controller; import org.springframework.util.FileCopyUtils; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.IOException; /** * 上傳文件控制器。 * * @author hmilyylimh * * @version 0.0.1 * * @date 2017/9/26 * */ @RestController public class FileUploadController { /** * 上傳文件。 * * @param file * @return * @throws IOException */ @RequestMapping(value = "/upload", method = RequestMethod.POST) @ResponseBody public String uploadFile(@RequestParam(value = "file", required = true)MultipartFile file) throws IOException{ byte[] bytes = file.getBytes(); File fileToSave = new File(file.getOriginalFilename()); FileCopyUtils.copy(bytes, fileToSave); return fileToSave.getAbsolutePath(); } // 解決 windows 的 curl 命令執(zhí)行后返回亂碼 // chcp 65001 就是換成UTF-8代碼頁 // chcp 936 可以換回默認(rèn)的GBK // chcp 437 是美國英語 // 在命令行標(biāo)題欄上點擊右鍵,選擇"屬性"->"字體",將字體修改為True Type字體"Lucida Console",然后點擊確定將屬性應(yīng)用到當(dāng)前窗口。 }2.5 添加文件服務(wù)啟動類(springms-file-uploadsrcmainjavacomspringmscloudMsFileUploadApplication.java)
package com.springms.cloud; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; /** * 簡單文件上傳微服務(wù)采取curl或者頁面點擊實現(xiàn)文件上傳。 * * @author hmilyylimh * * @version 0.0.1 * * @date 2017/9/26 * */ @SpringBootApplication @EnableEurekaClient public class MsFileUploadApplication { public static void main(String[] args) { SpringApplication.run(MsFileUploadApplication.class, args); System.out.println("【【【【【【 FileUpload微服務(wù) 】】】】】】已啟動."); } }三、測試
/**************************************************************************************** 一、簡單文件上傳微服務(wù),并加入 zuul 微服務(wù)后用 zuul 微服務(wù)地址采取curl或者頁面點擊實現(xiàn)文件上傳(頁面上傳文件): 1、編寫 FileUploadController 文件,添加應(yīng)用程序的注解 EnableEurekaClient 配置; 2、啟動 springms-discovery-eureka 模塊服務(wù),啟動1個端口; 3、啟動 springms-file-upload 模塊服務(wù); 4、新起網(wǎng)頁頁簽,輸入 http://localhost:8190/index.html 正常情況下是能看到選擇文件上傳的界面; 5、選擇文件,然后點擊 upload 上傳文件,然后可以在該項目所在的根目錄可以看到剛剛上傳的那個文件,而且網(wǎng)頁也會將剛剛上傳完后的磁盤路徑呈現(xiàn)在頁面上; ****************************************************************************************/ /**************************************************************************************** 二、簡單文件上傳微服務(wù),并加入 zuul 微服務(wù)后用 zuul 微服務(wù)地址采取curl或者頁面點擊實現(xiàn)文件上傳(命令上傳文件): 1、編寫 FileUploadController 文件,添加應(yīng)用程序的注解 EnableEurekaClient 配置; 2、啟動 springms-discovery-eureka 模塊服務(wù),啟動1個端口; 3、啟動 springms-file-upload 模塊服務(wù); 4、進(jìn)入 curl.exe 所在的目錄,嘗試 curl.exe www.baidu.com 看看是否正常,正常情況下會打印百度首頁的一堆信息; 5、執(zhí)行命令:curl.exe -F GBK "file=@文件名稱" localhost:8190/upload 6、正常情況下,第5步驟執(zhí)行后,直接返回上傳成功文件所在的磁盤全路徑; ****************************************************************************************/四、下載地址
https://gitee.com/ylimhhmily/SpringCloudTutorial.git
SpringCloudTutorial交流QQ群: 235322432
SpringCloudTutorial交流微信群: 微信溝通群二維碼圖片鏈接
歡迎關(guān)注,您的肯定是對我最大的支持!!!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70592.html
摘要:提供給文件上傳微服務(wù)用的。注意注解能注冊到服務(wù)上,是因為該注解包含了客戶端的注解,該是一個復(fù)合注解。地址可以查看該微服務(wù)網(wǎng)關(guān)代理了多少微服務(wù)的。 SpringCloud(第 024 篇)簡單文件上傳微服務(wù),并加入 zuul 微服務(wù)后用 zuul 微服務(wù)地址采取curl或者頁面點擊實現(xiàn)文件上傳 - 一、大致介紹 1、本章節(jié)主要將文件上傳微服務(wù)加入到 zuul 服務(wù)中去,然后利用 zuul...
摘要:第篇配置管理微服務(wù)一大致介紹在講到配置時,不得不說提供了一套解決分布式的配置管理方案,它既包含了服務(wù)端也包含了客戶端將配置文件當(dāng)作源代碼一樣存儲到或者服務(wù)器上,雖然說這樣沒有什么管理界面配置啥的,既然能用上傳上去,那也能做成管理界面,只是 SpringCloud(第 028 篇)ConfigServer 配置管理微服務(wù) - 一、大致介紹 1、在講到配置時,不得不說 SpringClou...
摘要:第篇中用部署一個簡單的基于服務(wù)治理發(fā)現(xiàn)的項目一大致介紹糾結(jié)了一下下,這么簡單的部署流程是否需要詳細(xì)的貼出來,然而糾結(jié)了一下還是將這個簡單的部署流程補(bǔ)充完整了經(jīng)過上節(jié)的講解,相信大家已經(jīng)對的命令操作都有了一定的了解,這里我就暫且默認(rèn)大家都擁 SpringCloud(第 053 篇)CentOS7 中用 Docker 部署一個簡單的基于 Eureka 服務(wù)治理發(fā)現(xiàn)的項目 - 一、大致介紹 ...
摘要:第篇中用部署一個簡單的基于服務(wù)治理發(fā)現(xiàn)的項目一大致介紹糾結(jié)了一下下,這么簡單的部署流程是否需要詳細(xì)的貼出來,然而糾結(jié)了一下還是將這個簡單的部署流程補(bǔ)充完整了經(jīng)過上節(jié)的講解,相信大家已經(jīng)對的命令操作都有了一定的了解,這里我就暫且默認(rèn)大家都擁 SpringCloud(第 053 篇)CentOS7 中用 Docker 部署一個簡單的基于 Eureka 服務(wù)治理發(fā)現(xiàn)的項目 - 一、大致介紹 ...
摘要:第篇配置服務(wù)端對配置文件內(nèi)容進(jìn)行對稱加解密一大致介紹前面我們也簡單講解了如何搭建配置服務(wù)端微服務(wù),也搭建了配置客戶端微服務(wù),但是呢,我們存儲在上面的內(nèi)容為明文,在生產(chǎn)環(huán)境的話,也不利于傳輸,特別一些重要的信息容易被泄露所以此章節(jié),我們講解 SpringCloud(第 030 篇)配置服務(wù)端ClientServer對配置文件內(nèi)容進(jìn)行對稱加解密 - 一、大致介紹 1、前面我們也簡單講解了如...
閱讀 3570·2021-11-16 11:45
閱讀 2129·2021-11-08 13:23
閱讀 2223·2021-10-11 10:59
閱讀 2900·2021-09-27 13:36
閱讀 2489·2019-08-30 15:54
閱讀 2679·2019-08-29 16:58
閱讀 2797·2019-08-29 16:56
閱讀 1347·2019-08-26 13:52