天天看點

Java SpringBoot 上傳圖檔到伺服器,完美可用

基本上每個我們項目都會有上傳圖檔的操作

老規矩先上效果圖

Java SpringBoot 上傳圖檔到伺服器,完美可用
Java SpringBoot 上傳圖檔到伺服器,完美可用
1.首先貼一下上傳檔案的工具類

import java.io.File;
import java.io.FileOutputStream;
/**
 * @Author: Manitozhang
 * @Data: 2019/1/9 16:51
 * @Email: [email protected]
 *
 * 檔案工具類
 */
public class FileUtil {
    public static void uploadFile(byte[] file, String filePath, String fileName) throws Exception {
        File targetFile = new File(filePath);
        if(!targetFile.exists()){
            targetFile.mkdirs();
        }
        FileOutputStream out = new FileOutputStream(filePath+fileName);
        out.write(file);
        out.flush();
        out.close();
    }
}      
Java SpringBoot 上傳圖檔到伺服器,完美可用

2.再貼一下Controller層的代碼

@Resource
    HttpServletRequest request;
    //處理檔案上傳
    @RequestMapping(value="/testuploadimg", method = RequestMethod.POST)
    public @ResponseBody String uploadImg(@RequestParam("file") MultipartFile file) {
        String fileName = file.getOriginalFilename();
        //設定檔案上傳路徑
        String filePath = request.getSession().getServletContext().getRealPath("imgupload/");
        try {
            FileUtil.uploadFile(file.getBytes(), filePath, fileName);
            return "上傳成功";
        } catch (Exception e) {
            return "上傳失敗";
        }
    }      
Java SpringBoot 上傳圖檔到伺服器,完美可用

因為我們的路徑是上傳到SpringBoot自帶的Tomcat伺服器中,是以在項目中看不到,不過可以直接擷取到

聲明:這個方法隻要Tomcat重新開機之後之前上傳的圖檔就會丢失

這就可以上傳成功了,上傳位置可以修改