1. 程式人生 > >Spring Boot學習筆記(三)檔案上傳與訪問靜態檔案

Spring Boot學習筆記(三)檔案上傳與訪問靜態檔案

檔案上傳

寫法和Spring MVC沒啥區別看起來

package org.test.Controll;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

@RestController
public class ControllTest { 
    @RequestMapping("/UploadAttach")
    public void UploadAttach(MultipartFile file) {

        System.out.println(file.getOriginalFilename() + "到達上傳Controll");
        try {
            file.transferTo(new File("d:/" + file.getOriginalFilename()));
        } catch (IOException e) {
            System.out.println("上傳失敗:" + e.getMessage());
        }
    }
}

Postman 

 spring boot上傳檔案預設大小限制是10MB

配置檔案application.properties, spring boot會自動掃描到,增加配置即可(然而失敗了, 我的spring boot載入不到這個配置檔案)日後研究

手動設定可以

package org.test;

import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.MultipartConfigFactory;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.context.annotation.Bean;

import javax.servlet.MultipartConfigElement;

@SpringBootApplication
@ServletComponentScan //掃描servlet註解

public class Application {

    public static void main(String[] args) {
        org.springframework.boot.SpringApplication.run(Application.class, args);
    } 

    /**
     * 檔案上傳配置
     * @return
     */
    @Bean
    public MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        //檔案最大
        factory.setMaxFileSize("100MB"); //
        /// 設定總上傳資料總大小
        factory.setMaxRequestSize("100MB");
        return factory.createMultipartConfig();
    }
}

訪問靜態檔案

在resources資料夾下新建static 資料夾,在此資料夾放就可以了, 固定格式