В этой статье используется конкретный код для загрузки файла Spring Boot для вашей ссылки. Конкретный контент заключается в следующем
1. Создайте веб -проект Maven, затем настройте файл pom.xml и добавьте зависимости:
<Depective> <groupid> org.springframework.boot </GroupId> <ArtifactId> Spring-Boot-Starter-Web </artifactid> <sersive> 1.0.2.release </version> </vehyse>
2. Введите форму в файле index.jsp в каталоге WebApp:
<html> <body> <form method = "post" ectype = "Multipart /form-data" action = " /upload"> файл для загрузки: <input type = "file" name = "file"> <br /> name: <input type = "text" name = "name"> <br /> <br /> <input type = "vatue" value = "upload"> Нажмите здесь, чтобы загрузить файл! </form> </body>
Эта форма - наша страница моделируемой загрузки
3. Напишите контроллер, который обрабатывает эту форму:
Импорт java.io.bufferedOutputStream; Импорт java.io.file; Импорт java.io.fileOutputStream; Import org.springframework.sterotype.controller; Импорт org.springframework.web.bind.annotation.requestmapping; Импорт org.springframework.web.bind.annotation.requestmethod; Импорт org.springframework.web.bind.annotation.requestparam; Импорт org.springframework.web.bind.annotation.responsebody; Импорт org.springframework.web.multipart.multipartfile; @Controller public class fileuploadcontroller {@requestmapping (value = "/upload", method = requestmethod.get) public @Responsebody String DegineUploadInfo () {return "Вы можете загрузить файл, опубликовав этот и тот же URL."; } @RequestMapping (value = "/upload", method = requestMethod.post) public @Responsebody строки handlefileUpload (@RequestParam ("name") String name, @RequestParam ("file") multiplaRtfile file) {if (! File.isempty ()) {try {byte (] file BufferedOutputStream Stream = new BufferedOutputStream (New FileOutputStream (новый файл (имя + "-UploAded"))); Stream.Write (байты); stream.close (); вернуть "вы успешно загружены" + name + "в" + name + "-uploaded!"; } catch (Exception e) {return "Вы не загрузили" + name + "=>" + e.getMessage (); }} else {return "Вы не загрузили" + name + ", потому что файл был пуст."; }}}4. Затем у нас есть несколько ограничений на загруженные файлы и написать основной метод для запуска Интернета:
Импорт org.springframework.boot.springapplication; Импорт org.springframework.boot.autoconfigure.enableautoconfiguration; Import org.springframework.boot.context.embedded.multipartConfigFactory; Импорт org.springframework.context.annotation.bean; Импорт org.springframework.context.annotation.componentscan; Импорт org.springframework.context.annotation.configuration; Импорт javax.servlet.multipartConfigelement; @Configuration @componentscan @enableautoconfiguration public Class Application {@bean public multiploartCygelement multipryArtConfigelement () {MultipArtCONFIGFACTORY FACTORY = new MultipCONFIGFIGFACTORY (); factory.setMaxFilesize ("128KB"); factory.setMaxRequestSize ("128KB"); вернуть фабрику.createmultipartConfig (); } public static void main (string [] args) {springApplication.run (application.class, args); }}5. Затем посетите http: // localhost: 8080/загрузить, чтобы увидеть страницу.
Приведенный выше пример реализует функцию загрузки одного файла. Предполагая, что мы хотим реализовать функцию загрузки пакетной загрузки файлов, нам нужно только просто изменить приведенный выше код. Учитывая проблему длины, следующее - просто другой код, по сравнению с вышеизложенным, и описания не размещены, как указано выше. :
1. Добавить файл batchupload.jsp
<html> <body> <form method = "post" enctype = "multiplator/form-data" action = "/pactor/upload"> файл для загрузки: <input type = "file" file "> <br/> file для загрузки: <input type =" file "name =" file "> <br/> <input =" Отправить "value =" upload "> Нажмите здесь, чтобы загрузить файл! </form> </body> </html>
2. Добавьте файл batchfileuploadcontroller.java:
Импорт org.springframework.steretype.controller; Импорт org.springframework.web.bind.annotation.requestmapping; Импорт org.springframework.web.bind.annotation.requestmethod; Импорт org.springframework.web.bind.annotation.responsebody; Импорт org.springframework.web.multipart.multipartfile; Импорт org.springframework.web.multipart.multiparthttpservletrequest; Импорт javax.servlet.http.httpservletrequest; Импорт java.io.bufferedOutputStream; Импорт java.io.file; Импорт java.io.fileOutputStream; импортировать java.util.list; /*** Создано Wenchao.ren 2014/4/26. */@Controller public class pactaleuploadcontroller {@requestmapping (value = "/batch/upload", method = requestmethod.post) public @Responsebody строки handlefileUpload (httpservlectrequest) {list <multipfile> files = (multiprThttpServVeerquest) {eLiveMARTFILE> files = (multiprThtpServQuest). for (int i = 0; i <files.size (); ++ i) {multiplaartfile file = files.get (i); String name = file.getName (); if (! file.isempty ()) {try {byte [] bytes = file.getbytes (); BufferedOutputStream Stream = new BufferedOutputStream (New FileOutputStream (новый файл (имя + i))); Stream.Write (байты); stream.close (); } catch (Exception e) {return "Вы не загрузили" + name + "=>" + e.getMessage (); }} else {return "Вы не загрузили" + name + ", потому что файл был пуст."; }} вернуть "загрузить успешно"; }}Такая простая функция загрузки партии в порядке, разве это не очень просто?
Примечание. Приведенный выше код предназначен только для демонстрации, поэтому стиль кодирования использует случайный подход, и не рекомендуется имитировать его.
Ссылка: Multipartresolver реализует функцию загрузки файла
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.
1. Multipartresolver также может реализовать функцию загрузки файлов. Справочная статья: