日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

java實現(xiàn)文件上傳的三種方式 java文件上傳原理

上傳文件是互聯(lián)網(wǎng)中常常應(yīng)用的場景之一,最典型的情況就是上傳頭像等,今天就帶著帶著大家做一個 Spring Boot 上傳文件的小案例 。

java實現(xiàn)文件上傳的三種方式 java文件上傳原理


1、pom 包配置我們使用 Spring Boot 版本 2.1.0、jdk 1.8、tomcat 8.0 。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.0.RELEASE</version>
</parent>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
引入了
spring-boot-starter-thymeleaf做頁面模板引擎,寫一些簡單的上傳示例 。
2、啟動類設(shè)置@SpringBootApplication
public class FileUploadWebApplication {
public static void main(String[] args) throws Exception {
SpringApplication.run(FileUploadWebApplication.class, args);
}
@Bean
public TomcatServletWebServerFactory tomcatEmbedded() {
TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
tomcat.addConnectorCustomizers((TomcatConnectorCustomizer) connector -> {
if ((connector.getProtocolHandler() instanceof AbstractHttp11Protocol<?>)) {
//-1 means unlimited
((AbstractHttp11Protocol<?>) connector.getProtocolHandler()).setMaxSwallowSize(-1);
}
});
return tomcat;
}
}
tomcatEmbedded 這段代碼是為了解決,上傳文件大于10M出現(xiàn)連接重置的問題 。此異常內(nèi)容 GlobalException 也捕獲不到 。

java實現(xiàn)文件上傳的三種方式 java文件上傳原理


詳細(xì)內(nèi)容參考:Tomcat large file upload connection reset
3、編寫前端頁面上傳頁面
<!DOCTYPE html>
<html xmlns:th=”http://www.thymeleaf.org”>
<body>
<h1>Spring Boot file upload example</h1>
<form method=”POST” action=”/upload” enctype=”multipart/form-data”>
<input type=”file” name=”file” /><br/><br/>
<input type=”submit” value=https://www.jinnalai.com/fenxiang/”Submit” />
</form>
</body>
</html>
非常簡單的一個 Post 請求,一個選擇框選擇文件,一個提交按鈕,效果如下:

java實現(xiàn)文件上傳的三種方式 java文件上傳原理


上傳結(jié)果展示頁面:
<!DOCTYPE html>
<html lang=”en” xmlns:th=”http://www.thymeleaf.org”>
<body>
<h1>Spring Boot – Upload Status</h1>
<div th:if=”${message}”>
<h2 th:text=”${message}”/>
</div>
</body>
</html>
效果圖如下:

java實現(xiàn)文件上傳的三種方式 java文件上傳原理


4、編寫上傳控制類訪問 localhost 自動跳轉(zhuǎn)到上傳頁面:
@GetMapping(“/”)
public String index() {
return “upload”;
}
上傳業(yè)務(wù)處理

推薦閱讀