SpringMVC基于注解使用:上传&下载

01-文件下载

基于servlet api的文件下载

注意一点content-disposition是以文件下载的方式打开意思是客户端地址栏不会改变,

如果注销了那句话就会跳转到下载图片的图片里面去,就在网页中显示了

基于spring ResponseEntity的文件下载 不支持缓冲区

一次性读取所有数据的方法

Spring MVC 为文件上传提供了直接的支持,这种支持是通过即插即

用的 MultipartResolver 实现的,Spring 用 Jakarta Commons FileUpload 技
术实现了一个 MultipartResolver 实现类:CommonsMultipartResovler

首先在pom.xml文件中导入依赖

在spring-mvc.xml文件中写入上传解析器

单文件上传的方法

在index.jsp中的配置,用multipart/form-data才能支持文件上传在表单里

在客户端的展示

多文件上次的方法,在表单里加入multiple就行,accept为设置传输的类型是什么如下图限制了传输类型只能是image但是只限制了在前端,在客户端传输的时候也还是可以传输别的内容的

用多线程来传输数据,上图都是串行传递的而多线程是并行传递的,并行的传输速度比串行快,

在代码里声明个线程用Lambda表达式(匿名函数对象)的方法,创建完后,thread.start()

启动线程,thread.join()让子线程执行完再执行主线程

上传后在客户端显示图片的方法,@RequsstParam()起别名,model是为了把上传的文件名传入到域里面

相关推荐
Tigshop开源商城1 小时前
『订单税率+收货地址校验国家字段』功能上新|跨境运营更高效,Tigshop开源商城系统 JAVA v5.8.23 版本更新
java·开源商城系统·tigshop
REDcker1 小时前
C++变量存储与ELF段布局详解 从const全局到rodata与nm_readelf验证实践
java·c++·面试
kobesdu3 小时前
【ROS2实战笔记-19】ROS2 生命周期节点的启动顺序、状态转换陷阱与热备方案
java·前端·笔记·机器人·ros·ros2
neo_Ggx233 小时前
Maven 版本管理详解:SNAPSHOT、Release 与 Nexus 仓库的区别和影响
java·maven
matlabgoodboy3 小时前
软件开发定制小程序APP帮代做java代码代编写C语言设计python编程
java·c语言·小程序
江离w3 小时前
新版vibecoding项目初始化指令
java
tongluowan0074 小时前
Spring MVC 底层工作流程+源码分析
java·spring·mvc
Hexian25804 小时前
SpringAI系列(基础概念&springai系列 API)
spring·ai
java1234_小锋4 小时前
SpringBoot为什么要禁止循环依赖?
java·数据库·spring boot
折哥的程序人生 · 物流技术专研5 小时前
《Java 100 天进阶之路》第17篇:Java常用包装类与自动装箱拆箱深入
java·开发语言·后端·面试