bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

SpringBootJava實現文件上傳下載功能-創新互聯

SpringBoot實現文件上傳下載功能 配置和前端頁面
  • maven配置文件
org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-thymeleaf
  • 前端頁面
Title文件上傳

[[${filename}]]
圖片文件下載
  • webconfig配置
@Configuration
public class MyWebAppConfigurer implements WebMvcConfigurer {@Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        //  用于前端匹配路徑 /AAA-uploaded/** 的時候 可以直接定位到D://AAA-uploaded/圖片存儲的地址
        //  用于前端頁面渲染圖片
        registry.addResourceHandler("/AAA-uploaded/**").
                addResourceLocations("file:/" + "D://AAA-uploaded/");
    }
}
  • yaml配置文件
server:
  port: 8080

my-config:
  file-path: D:\
文件上傳功能

MultipartFile接收前端傳來的文件

成都創新互聯主營前郭網站建設的網絡公司,主營網站建設方案,成都APP應用開發,前郭h5微信小程序開發搭建,前郭網站營銷推廣歡迎前郭等地區企業咨詢
@Value("${my-config.file-path}")
    private String myFilePath;

    @RequestMapping("upload")
    public String upload(@RequestParam("file") MultipartFile file, Model model) {try {//  避免圖片名字重復 采用時間戳+圖片名
            String fileName = System.currentTimeMillis() + file.getOriginalFilename();
            //  獲取圖片存放路徑
            String destFileName = myFilePath + "AAA-uploaded" + File.separator + fileName;
            File destFile = new File(destFileName);
            //  判斷上一級目錄是否存在 不存在則創建
            if (!destFile.getParentFile().exists()) {destFile.getParentFile().mkdirs();
            }
            //  移動文件到指定目錄下
            file.transferTo(destFile);
            //  存放到頁面用于回顯測試
            model.addAttribute("filename", "AAA-uploaded/" + fileName);
        } catch (Exception e) {e.printStackTrace();
            return "上傳失敗," + e.getMessage();
        }
        return "index";
    }
文件下載功能

ResponseEntity用于控制器方法的返回值類型,該控制器方法的返回值就是響應到瀏覽器的響應報文

@Value("${my-config.file-path}")
    private String myFilePath;
@ResponseBody
    @RequestMapping("/download")
    public ResponseEntitytestResponseEntity(@RequestParam(value = "imageName", required = false) String 	filename) throws IOException {//  獲取圖片名稱返回給頁面用于下載
        String name = filename.split("/")[1];
        File newfile = new File("D:/AAA-uploaded" + File.separator + name);
        if (!newfile.exists()) {throw new IOException(name + "文件不存在");
        }
        //  創建輸入流
        InputStream is = new FileInputStream(newfile);
        //  創建字節數組
        byte[] bytes = new byte[is.available()];
        //  將流讀到字節數組中
        is.read(bytes);
        //  創建HttpHeaders對象設置響應頭信息
        MultiValueMapheaders = new HttpHeaders();
        //  設置要下載方式以及下載文件的名字
        headers.add("Content-Disposition", "attachment;filename="+ name);
        //  設置響應狀態碼
        HttpStatus statusCode = HttpStatus.OK;
        //  創建ResponseEntity對象
        ResponseEntityresponseEntity = new ResponseEntity<>(bytes, headers, statusCode);
        //  關閉輸入流
        is.close();
        return responseEntity;
    }

你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

分享文章:SpringBootJava實現文件上傳下載功能-創新互聯
當前鏈接:http://vcdvsql.cn/article44/hoghe.html

成都網站建設公司_創新互聯,為您提供云服務器企業建站網站導航商城網站微信公眾號用戶體驗

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

h5響應式網站建設