小D課堂 - 零基礎入門SpringBoot2.X到實戰_第2節 SpringBoot接口Http協議開發實戰_十二、SpringBoot2.x文件上傳實戰

筆記


七、SpringBoot2.x文件上傳實戰
    簡介:講解HTML頁面文件上傳和後端處理實戰
        一、講解springboot文件上傳 MultipartFile file,源自SpringMVC
                        
            1)靜態頁面直接訪問:localhost:8080/index.html
                注意點:
                    若是想要直接訪問html頁面,則須要把html放在springboot默認加載的文件夾下面
            2)MultipartFile 對象的transferTo方法,用於文件保存(效率和操做比原先用FileOutStream方便和高效)
            
            訪問路徑 http://localhost:8080/images/39020dbb-9253-41b9-8ff9-403309ff3f19.jpeg
 html

訪問HTML靜態頁面

上節課加的 主要用來路徑跳轉用 Thymleaf

註釋掉後。html頁面就必須放在它的可文件下面

用Thymeleaf 。放在templates下的就必須這麼跳轉才能找到index.html

若是不用Thymeleaf就必須把靜態頁放在static或者resources下
在static下放了一個index.html頁面

輸出的內容

能夠直接訪問到,由於頁面在static下。這樣訪問不依賴api跳轉。

spring

文件上傳

在static下新建了靜態頁

文件提交的 就必須設置form的 enctype="multipart/form-data"

這裏還引入了一個test.js文件

直接輸入upload.html

在上節課的FileController上新加一個方法
filePath就是文件存儲的路徑

@RequestMapping的upload

就是對應form表單的upload

head_Img對應



HttpServletRequest用於獲取其餘的表單字段。例如姓名


MultipartFile繼承自InputStreamSource

裏面有些方法。getName就是獲取文件名稱。
getOriginalFileName原始名稱
ContentType 文件類型
4
transferTo保存文件,傳遞一個File對象就能夠了。



這個路徑是當前項目的路徑




新建類JosnData用來包裝上傳後返回的對象,就兩個屬性

生成get和set和生成一個有參數的構造函數。有參構造 只要code和msg


返回對象設置爲jsonData

action內返回的數據

最終代碼
json

重啓應用-測試


選擇圖片直接上傳



訪問這個圖片。直接是images文件夾後面跟着圖片的名稱


再次上傳,把名字也傳遞過去


把JsonData的構造函數加上data的數據


再次運行測試





console的輸出
後端

總結

接口能夠加一些校驗


 api

相關文章
相關標籤/搜索