搜索
首页php教程PHP开发SpringMVC实现图片上传
SpringMVC实现图片上传Nov 23, 2016 pm 03:05 PM
springmvc

我们实现文件上传 用字节流的话代码量大 效率低下 所以springMVC为我们提供了自己的方法。

SpringMVC专门提供了CommonMultipartResolver组件实现文件上传:

maxUploadSize     文件最大限制,单位是byte

maxInMemorySize    低于这个大小的文件暂存在内存中

defaultEncoding    默认编码

例如这样配置:

  

  

  

上面的的配置,id必须是multipartResolver,这样才会保证上传。不能随意命名

154420_BzEY_1450051.png

这就是必须保证bean的id相同,才能正常工作。

 

这时候我们就开始配置form表单,必须添加enctype=“multipart/form-data”:

154420_BzEY_1450051.png

然后记得引入两个jar包:

commons-fileupload.jar

commens-io-1.4.jar

 

然后我们开始编写java代码:

1.首先将request变成MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest)request;

2.接下来就能用getFile来获取file:

CommonsMultipartFile file = (CommonsMultipartFile)multipartRequest.getFile(“file”);

这个file必须与form表单中input的name的值一致。

3.最后把file移动到目标地址:

FileCopyUtil.cope(file.getByte(),uploadFile);

 

以上是单文件上传 ,对于多文件上传,可以用MultipartHttpServletRequest的getFileMap()来获取表单传过来的所有文件

然后用for循环遍历依次上传文件:

154420_BzEY_1450051.png

 说完了文件上传,再说下如何下载:

文件下载主要采用字节流的形式,有三个要点:

1.设置编码格式为:text/html;charset=utf-8

2.设置header中Content-disposition属性值为attachment;filename=文件名(这个文件名就是客户端弹出框文件的名字)

3.设置header中Context-Length属性,值为文件的大小

以上是一个小例子。

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
SpringBoot与SpringMVC的比较及差别分析SpringBoot与SpringMVC的比较及差别分析Dec 29, 2023 am 11:02 AM

SpringBoot和SpringMVC都是Java开发中常用的框架,但它们之间有一些明显的差异。本文将探究这两个框架的特点和用途,并对它们的差异进行比较。首先,我们来了解一下SpringBoot。SpringBoot是由Pivotal团队开发的,它旨在简化基于Spring框架的应用程序的创建和部署。它提供了一种快速、轻量级的方式来构建独立的、可执行

比较SpringBoot与SpringMVC的差异是什么?比较SpringBoot与SpringMVC的差异是什么?Dec 29, 2023 am 10:46 AM

SpringBoot与SpringMVC的不同之处在哪里?SpringBoot和SpringMVC是两个非常流行的Java开发框架,用于构建Web应用程序。尽管它们经常分别被使用,但它们之间的不同之处也是很明显的。首先,SpringBoot可以被看作是一个Spring框架的扩展或者增强版。它旨在简化Spring应用程序的初始化和配置过程,以帮助开发人

SpringBoot与SpringMVC的区别是什么?SpringBoot与SpringMVC的区别是什么?Dec 29, 2023 pm 05:19 PM

SpringBoot和SpringMVC是Java开发中常用的两个框架,它们都是由Spring框架所提供的,但在功能和使用方式上有着一些区别。本文将分别介绍SpringBoot和SpringMVC的特点和区别。一、SpringBoot的特点:简化配置:SpringBoot通过约定优于配置的原则,大大简化了项目的配置过程。它可以自动配置项目所需要的参数,开发人

springboot和springmvc有哪些区别springboot和springmvc有哪些区别Jun 07, 2023 am 10:10 AM

springboot和springmvc区别是:​1、含义不同;2、配置不同;3、依赖项不同;4、开发时间不同;5、生产力不同;6、实现JAR打包功能的方式不同;7、是否提供批处理功能;8、作用不同;9、社区和文档支持不同;10、是否需要部署描述符。

spring和springmvc有哪些区别spring和springmvc有哪些区别Dec 29, 2023 pm 05:02 PM

spring和springmvc的区别:1、定位和功能;2、核心功能;3、应用领域;4、扩展性。详细介绍:1、定位和功能,Spring是一个综合性的应用程序开发框架,提供了依赖注入、面向切面编程、事务管理等功能,旨在简化企业级应用程序的开发,而Spring MVC是Spring框架中的一个模块,用于Web应用程序的开发,实现了MVC模式;2、核心功能等等。

Java API 开发中使用 SpringMVC 进行 Web 服务处理Java API 开发中使用 SpringMVC 进行 Web 服务处理Jun 17, 2023 pm 11:38 PM

随着互联网的发展,Web服务越来越普遍。JavaAPI作为一种应用编程接口,也在不断地推出新的版本来适应不同的应用场景。而SpringMVC作为一种流行的开源框架,能够帮助我们轻松地构建Web应用程序。本文将详细讲解在JavaAPI开发中,如何使用SpringMVC进行Web服务处理,包括配置SpringMVC、编写控制器、使用

Java的SpringMVC拦截器怎么用Java的SpringMVC拦截器怎么用May 13, 2023 pm 02:55 PM

拦截器(interceptor)的作用SpringMVC的拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。将拦截器按一定的顺序联结成一条链,这条链称为拦截器链(InterceptorChain)。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。拦截器也是AOP思想的具体实现。拦截器和过滤器区别区别过滤器(Filter)拦截器(Intercepter)使用范围是servlet规范中的一部分,任何JavaWeb工程都可以使用是Spri

面试官:你说的SpringMVC的请求处理流程是网上抄的吧?面试官:你说的SpringMVC的请求处理流程是网上抄的吧?Jul 26, 2023 pm 04:34 PM

本文主要从源码的阅读和调试的角度,整体的讲解了SpringMVC处理请求的整个流程,并且讲解了参数的绑定以及返回值的处理。相信大家看完后,结合自己的调试信息,会对SpringMVC的请求处理过程有一个更深入的理解。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具