第七章:文件上傳-1. 基礎上傳操做

全部只要與WEB開發牽扯到的開發框架都必須去面對有文件的上傳處理,在原始的Spring之中所使用的上傳組件 是apache的fileupload組件, 在SpringBoot裏面也一樣要繼續使用此組件。javascript

一、若是要進行上傳處理,則首先須要準備出相應的控制器;html

package cn.mldn.microboot.controller;

import java.io.IOException;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;

import cn.mldn.microboot.util.controller.AbstractBaseController;

@Controller
public class UploadController extends AbstractBaseController {
	@RequestMapping(value = "/uploadPre", method = RequestMethod.GET)
	public String uploadPre() { // 經過model能夠實現內容的傳遞
		return "upload_page";
	}
	@RequestMapping(value = "/upload", method = RequestMethod.POST)
	@ResponseBody
	public String upload(String name, MultipartFile photo) {
		if (photo != null) {	// 如今有文件上傳
			System.out.println("【*** 文件上傳 ****】name = " + name);
			System.out.println("【*** 文件上傳 ****】photoName = " + photo.getName());
			System.out.println("【*** 文件上傳 ****】photoContentType = " + photo.getContentType());
			System.out.println("【*** 文件上傳 ****】photoSize = " + photo.getSize());
			try {
				//photo.getInputStream();
				System.out.println("========"+photo.getInputStream());
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		return "upload-file";
	}
}

二、創建一個編輯上傳的頁面java

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
	<title>SpringBoot模版渲染</title>
	<script type="text/javascript" th:src="@{/js/main.js}"></script> 
	<link rel="icon" type="image/x-icon" href="/images/mldn.ico"/>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
</head>
<body>
	<form th:action="@{/upload}" method="post" enctype="multipart/form-data">
		姓名:<input type="text" name="name"/><br/>
		照片:<input type="file" name="photo"/><br/>
		<input type="submit" value="上傳"/>
	</form>
</body>
</html>

http://localhost/uploadPreweb

【*** 文件上傳 ****】name = 603347175@qq.com
【*** 文件上傳 ****】photoName = photo
【*** 文件上傳 ****】photoContentType = image/png
【*** 文件上傳 ****】photoSize = 200044
========java.io.ByteArrayInputStream@62b601

 

 

此時文件上傳的基本操做就成功實現了。spring

相關文章
相關標籤/搜索