JAVA IO流 SpringMVC 上传文件和下载文件

SpringMVC文件上传

文件上传:指的是将本地的文件复制到服务器上

1. 前端准备

三要素

  1. 必须是post请求
  2. 必须是复杂类型请求
    enctype=“multipart/form-data”
  3. input里面的type必须是 file input的name必须和后台接收参数名一致
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>文件上传</title>
	</head>
	<body>
		<form action="/file/upload" method="post" enctype="multipart/form-data">
			<input type="file" name="file"><br/>
			<input type="submit" value="提交">
		</form>
	</body>
</html>

2.后台准备

1.导入jar包
com.springsource.org.apache.commons.fileupload-1.2.0.jar
com.springsource.org.apache.commons.io-1.4.0.jar
2.配置文件上传解析器
如果没有配置就会报错误&#x

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Spring MVC上文件,您可以遵循以下步骤: 1. 创建一个包含上表单的JSP页面。 2. 创建一个Spring MVC控制器,它将处理上请求。 3. 在控制器中,使用MultipartFile对象来接收上文件。 4. 使用Java IO API来将文件保存到服务器文件系统中。 下面是一个简单的示例代码,可以用来实现文件: 在JSP页面中,您需要创建一个包含文件表单的HTML表单。请注意,表单的enctype属性必须设置为“multipart/form-data”,以便能够上文件。 ```html <form method="POST" action="/upload" enctype="multipart/form-data"> <input type="file" name="file" /><br/><br/> <input type="submit" value="Upload" /> </form> ``` 在Spring MVC控制器中,您需要创建一个方法来处理文件请求。该方法应该使用@RequestParam注释来接收上文件,并使用Java IO API将文件保存到服务器文件系统中。 ```java @Controller public class FileUploadController { @RequestMapping(value="/upload", method=RequestMethod.POST) public String handleFileUpload(@RequestParam("file") MultipartFile file, Model model){ if (!file.isEmpty()) { try { byte[] bytes = file.getBytes(); // 文件存储路径 String rootPath = System.getProperty("catalina.home"); File dir = new File(rootPath + File.separator + "tmpFiles"); if (!dir.exists()) dir.mkdirs(); // 创建文件在服务器文件系统中的存储位置 File serverFile = new File(dir.getAbsolutePath() + File.separator + file.getOriginalFilename()); BufferedOutputStream stream = new BufferedOutputStream( new FileOutputStream(serverFile)); stream.write(bytes); stream.close(); // 在页面上显示上文件的信息 model.addAttribute("message", "You successfully uploaded file=" + file.getOriginalFilename()); } catch (Exception e) { model.addAttribute("message", "Failed to upload file=" + file.getOriginalFilename() + " " + e.getMessage()); } } else { model.addAttribute("message", "Failed to upload empty file."); } return "uploadResult"; } } ``` 在上面的代码中,我们使用MultipartFile对象接收上文件,并使用Java IO API将文件保存到服务器文件系统中。最后,我们将上文件的信息添加到模型中,以便在页面上显示。 请注意,上面的示例代码中的文件保存路径为Tomcat服务器的根目录下的“tmpFiles”文件夹。您可以根据需要更改文件保存路径。 希望这可以帮助您开始使用Spring MVC上文件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值