摘要:二實現步驟添加引用包模塊客戶端發現模塊監控和管理生產環境的模塊添加應用配置文件,默認,默認打印日志添加簡單的上傳文件頁面添加上傳文件控制器上傳文件控制器。添加文件服務啟動類簡單文件上傳微服務采取或者頁面點擊實現文件上傳。
SpringCloud(第 023 篇)簡單文件上傳微服務采取curl或者頁面點擊實現文件上傳
-
一、大致介紹1、本章節主要搭建了一個簡單的頁面上傳Web控制器,主要為后序工作加入 zuul 微服務而做的準備; 2、不過在本章節用命令上傳文件的時候,在windows命令窗口有時候會出現中文亂碼什么的,請注意看本文 FileUploadController 是如何解決這個亂碼問題的; 3、至于使用 curl 命令需要下載什么安裝包之類的,這個就請大家找找度娘怎么弄吧。二、實現步驟 2.1 添加 maven 引用包
2.2 添加應用配置文件(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,默認1M max-request-size: 20Mb # Max request size,默認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 命令執行后返回亂碼 // chcp 65001 就是換成UTF-8代碼頁 // chcp 936 可以換回默認的GBK // chcp 437 是美國英語 // 在命令行標題欄上點擊右鍵,選擇"屬性"->"字體",將字體修改為True Type字體"Lucida Console",然后點擊確定將屬性應用到當前窗口。 }2.5 添加文件服務啟動類(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; /** * 簡單文件上傳微服務采取curl或者頁面點擊實現文件上傳。 * * @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微服務 】】】】】】已啟動."); } }三、測試
/**************************************************************************************** 一、簡單文件上傳微服務,并加入 zuul 微服務后用 zuul 微服務地址采取curl或者頁面點擊實現文件上傳(頁面上傳文件): 1、編寫 FileUploadController 文件,添加應用程序的注解 EnableEurekaClient 配置; 2、啟動 springms-discovery-eureka 模塊服務,啟動1個端口; 3、啟動 springms-file-upload 模塊服務; 4、新起網頁頁簽,輸入 http://localhost:8190/index.html 正常情況下是能看到選擇文件上傳的界面; 5、選擇文件,然后點擊 upload 上傳文件,然后可以在該項目所在的根目錄可以看到剛剛上傳的那個文件,而且網頁也會將剛剛上傳完后的磁盤路徑呈現在頁面上; ****************************************************************************************/ /**************************************************************************************** 二、簡單文件上傳微服務,并加入 zuul 微服務后用 zuul 微服務地址采取curl或者頁面點擊實現文件上傳(命令上傳文件): 1、編寫 FileUploadController 文件,添加應用程序的注解 EnableEurekaClient 配置; 2、啟動 springms-discovery-eureka 模塊服務,啟動1個端口; 3、啟動 springms-file-upload 模塊服務; 4、進入 curl.exe 所在的目錄,嘗試 curl.exe www.baidu.com 看看是否正常,正常情況下會打印百度首頁的一堆信息; 5、執行命令:curl.exe -F GBK "file=@文件名稱" localhost:8190/upload 6、正常情況下,第5步驟執行后,直接返回上傳成功文件所在的磁盤全路徑; ****************************************************************************************/四、下載地址
https://gitee.com/ylimhhmily/SpringCloudTutorial.git
SpringCloudTutorial交流QQ群: 235322432
SpringCloudTutorial交流微信群: 微信溝通群二維碼圖片鏈接
歡迎關注,您的肯定是對我最大的支持!!!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/70592.html
摘要:提供給文件上傳微服務用的。注意注解能注冊到服務上,是因為該注解包含了客戶端的注解,該是一個復合注解。地址可以查看該微服務網關代理了多少微服務的。 SpringCloud(第 024 篇)簡單文件上傳微服務,并加入 zuul 微服務后用 zuul 微服務地址采取curl或者頁面點擊實現文件上傳 - 一、大致介紹 1、本章節主要將文件上傳微服務加入到 zuul 服務中去,然后利用 zuul...
摘要:第篇配置管理微服務一大致介紹在講到配置時,不得不說提供了一套解決分布式的配置管理方案,它既包含了服務端也包含了客戶端將配置文件當作源代碼一樣存儲到或者服務器上,雖然說這樣沒有什么管理界面配置啥的,既然能用上傳上去,那也能做成管理界面,只是 SpringCloud(第 028 篇)ConfigServer 配置管理微服務 - 一、大致介紹 1、在講到配置時,不得不說 SpringClou...
摘要:第篇中用部署一個簡單的基于服務治理發現的項目一大致介紹糾結了一下下,這么簡單的部署流程是否需要詳細的貼出來,然而糾結了一下還是將這個簡單的部署流程補充完整了經過上節的講解,相信大家已經對的命令操作都有了一定的了解,這里我就暫且默認大家都擁 SpringCloud(第 053 篇)CentOS7 中用 Docker 部署一個簡單的基于 Eureka 服務治理發現的項目 - 一、大致介紹 ...
摘要:第篇中用部署一個簡單的基于服務治理發現的項目一大致介紹糾結了一下下,這么簡單的部署流程是否需要詳細的貼出來,然而糾結了一下還是將這個簡單的部署流程補充完整了經過上節的講解,相信大家已經對的命令操作都有了一定的了解,這里我就暫且默認大家都擁 SpringCloud(第 053 篇)CentOS7 中用 Docker 部署一個簡單的基于 Eureka 服務治理發現的項目 - 一、大致介紹 ...
摘要:第篇配置服務端對配置文件內容進行對稱加解密一大致介紹前面我們也簡單講解了如何搭建配置服務端微服務,也搭建了配置客戶端微服務,但是呢,我們存儲在上面的內容為明文,在生產環境的話,也不利于傳輸,特別一些重要的信息容易被泄露所以此章節,我們講解 SpringCloud(第 030 篇)配置服務端ClientServer對配置文件內容進行對稱加解密 - 一、大致介紹 1、前面我們也簡單講解了如...
閱讀 3568·2021-11-16 11:45
閱讀 2116·2021-11-08 13:23
閱讀 2219·2021-10-11 10:59
閱讀 2898·2021-09-27 13:36
閱讀 2484·2019-08-30 15:54
閱讀 2675·2019-08-29 16:58
閱讀 2792·2019-08-29 16:56
閱讀 1347·2019-08-26 13:52