news 2026/4/18 7:07:32

第十篇 文件上传

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
第十篇 文件上传

文件上传是指将本地(客户端)的文件通过网络传输到远程服务器的过程,是 Web 开发、客户端 / 服务端交互中最常见的功能之一。在 Java 开发场景中,通常特指浏览器(前端)或客户端程序将文件(如图片、文档、视频、压缩包等)提交到 Java 后端服务器,并由服务器接收、解析、存储(或进一步处理)的过程。

实现步骤

前端

1、必须使用表单提交

2、请求方法必须是post

3、设置表单 enctype=multipart/form-data属性

4、使用input type=file 标签,指定name属性

后端

1、使用MultipartFile类型接收文件

2、使用方法获取相应的参数

3、读取到文件后进行存储

前端代码:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>用户详情页面</title> </head> <body> <!-- 上传 头像--> <form action="/user/login" method="post" enctype="multipart/form-data"> <div> 上传图片: <input type="file" name="userIcon" /> </div> <div> <input type="submit" value="上传头像" /> </div> </form> </body> </html>

后端代码:

/** * 演示文件上传操作 */ @RestController public class UploadFileController { /** * 文件上传方法 */ @RequestMapping("/user/login") public ResultObj uploadFile(MultipartFile userIcon) throws IOException { String originalFilename = userIcon.getOriginalFilename(); System.out.println("originalFilename = " + originalFilename); //获取原文件名称 String name = userIcon.getName(); System.out.println("name = " + name); //表示获取表单上传 文件name值 long size = userIcon.getSize(); System.out.println("size = " + size); //获取上传文件大小 String contentType = userIcon.getContentType(); System.out.println("contentType = " + contentType); //表示上传文件类型 image/png // InputStream is = userIcon.getInputStream(); //获取根据输入流表现显示 //把文件保存到指定目录下 userIcon.transferTo(new File("F://class118/" + originalFilename)); return ResultObj.ok(); } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 1:31:07

人工智能大模型技术突破:引领智能时代新纪元

人工智能大模型技术突破&#xff1a;引领智能时代新纪元 【免费下载链接】Qwen3-30B-A3B-MLX-6bit 项目地址: https://ai.gitcode.com/hf_mirrors/Qwen/Qwen3-30B-A3B-MLX-6bit 在当今数字化浪潮席卷全球的背景下&#xff0c;人工智能大模型技术正以惊人的速度重塑着我…

作者头像 李华
网站建设 2026/4/18 1:31:08

力扣hot100:路径总和III

题目描述&#xff1a;思路&#xff1a;本题和“和为k的子数组 有异曲同工之妙”&#xff0c;思路也相似。可以用一个哈希表去存储每条路径的和&#xff0c;两条路径和只差即为中间路径的和。可以用递归的方式向下遍历这颗树&#xff0c;定义一个s&#xff0c;表示目前路径的和&…

作者头像 李华
网站建设 2026/4/18 1:36:41

Blender 3MF插件:5个高效解决3D打印工作流痛点的技术方案

Blender 3MF插件&#xff1a;5个高效解决3D打印工作流痛点的技术方案 【免费下载链接】Blender3mfFormat Blender add-on to import/export 3MF files 项目地址: https://gitcode.com/gh_mirrors/bl/Blender3mfFormat 作为连接创意设计与3D制造的关键桥梁&#xff0c;Bl…

作者头像 李华
网站建设 2026/4/18 1:35:53

48、Linux系统网络配置、故障排查与安全管理全解析

Linux系统网络配置、故障排查与安全管理全解析 1. 网络基础配置与操作 在Linux系统中,有多个工具和配置文件可用于网络配置和操作。 - IP地址获取与接口配置 : dhclient 程序可通过DHCP协议向本地网络查询IP地址信息,并使用这些信息配置接口。例如,当你需要自动获取…

作者头像 李华
网站建设 2026/4/18 3:20:36

Wan2.2-T2V-A14B能否生成适用于法庭质证的时空推演视频

Wan2.2-T2V-A14B能否生成适用于法庭质证的时空推演视频 在一场复杂的刑事案件庭审中&#xff0c;陪审团面对多份相互矛盾的证词、零散的时间线索和模糊的空间描述&#xff0c;往往难以构建出清晰的事件全貌。传统的案情还原依赖手绘示意图、3D建模动画或监控拼接视频&#xff0…

作者头像 李华
网站建设 2026/4/18 3:18:19

金融高频交易策略性能评估与优化框架

金融高频交易策略性能评估与优化框架关键词&#xff1a;金融高频交易、策略性能评估、优化框架、量化分析、交易策略摘要&#xff1a;本文围绕金融高频交易策略性能评估与优化框架展开深入探讨。首先介绍了该研究的背景、目的、预期读者以及文档结构等内容。接着阐述了核心概念…

作者头像 李华