雖然如今已經實現了上傳操做,可是這個時候的上傳是沒有限制的,也就是說你能夠上傳任意大小的文件,在實際的開發之中是不可能存在的,因此必須對上傳進行一些限制處理。java
若是要想去改變上傳的限制,那麼最好的作法是進行application.yml配置文件的變動web
server: port: 80 spring: messages: basename: i18n/Messages,i18n/Pages http: multipart: enabled: true # 能夠啓用http上傳 max-file-size: 1KB # 設置支持的單個上傳文件的大小限制 max-request-size: 20MB # 設置最大的請求的文件大小,設置整體大小請求 file-size-threshold: 512KB # 當上傳文件達到指定配置量的時候會將文件內容寫入磁盤
那麼此時就能夠經過以上的文件實現上傳的處理限制。spring
對於上傳的配置限制,除了採用以上配置文件編寫以外,也能夠單獨編寫一個配置程序類。app
範例:創建一個上傳的配置程序類:code
server: port: 80 spring: messages: basename: i18n/Messages,i18n/Pages # http: # multipart: # enabled: true # 能夠啓用http上傳 # max-file-size: 1KB # 設置支持的單個上傳文件的大小限制 # max-request-size: 20MB # 設置最大的請求的文件大小,設置整體大小請求 # file-size-threshold: 512KB # 當上傳文件達到指定配置量的時候會將文件內容寫入磁盤 # location: / # 設置上傳的臨時目錄
package cn.mldn.microboot.config; import javax.servlet.MultipartConfigElement; import org.springframework.boot.web.servlet.MultipartConfigFactory; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class UploadConfig { @Bean public MultipartConfigElement getMultipartConfig() { MultipartConfigFactory config = new MultipartConfigFactory() ; config.setMaxFileSize("10MB"); // 設置上傳文件的單個大小限制 config.setMaxRequestSize("100MB"); // 設置總的上傳的大小限制 config.setLocation("/"); // 設置臨時保存目錄 return config.createMultipartConfig() ; // 建立一個上傳配置 } }
在之後的開發之中此類上傳的配置程序會常常性出現。server