当前位置:首页 > 旅游指南

enctype Spring文件上传功能源码剖析

Spring默认提供文件上传的功能。使用起来非常简单,我们也可以使用Apache的CommonsUpload包。这里我们使用Spring自己的解析。

基本用法

1.在Spring配置中添加多部分解析器接口的Bean。

@Bean(

名称= {多部分解析器}

)@ conditionalonnissingBean({ Multipartresolver . class })publistandardservletMultipartresolver erMultipartresolver(){

standardservletMultipartresolver = newstandardservletMultipartresolver();

multipart resolver . setresolvelazily(this . multipart properties . isresolverlally());returnmultipartResolver

}

2.前端表单类型方法是POST方法,enctype是多部分/表单数据

form method = post action =/formenctype = multipart/form-data

inputtype=textname=name/

input type = filename = file/input type = submit//form

3.在Controller文件中写入相应的映射,上传文件的内容就可以通过MultiPartFile获取和处理

@PostMapping(/form)

publicStringhandleFormUpload(

@RequestParam(name)Stringname,

@ RequestParam(file)MultiperFileFileFile)throwSioException { if(!file . isempty()){ byte[]bytes = file . GetBytes();//storebytessomewhreturn redirect:upload success;

} return redirect:upload failure;

}

原理

1.Spring的DispatchServlet可以检测当前请求是否是一个多部分请求。

前端控制器

2.如果检测到是多部分请求,请解析多部分请求

前端控制器

2.1确定它是否是一个多部分请求

StandardServletMultipartResolver

2.2解析多部分请求。

StandardServletMultipartResolver

3.具体分析过程。部分是底层的原生API,可以通过HttpServletRequest直接调用。然后封装请求的零件参数。

标准多部分httpersvletrequest

3.1我们可以看到前端多部分/表单数据上传请求的类型是

表单请求部分

4.创建了多部分文件的实现。前端表单上传的多部分零件是从零件获取的。

标准多部分文件

5.在控制器中,您可以使用参数映射来获取上传的多部分部分。

控制器文件

总结

这次主要分析的是StandardServlet MultipartResolver,Apache下的CommonsMultipartResolver的处理程序大致相同,可以自行分析。通过这种分析,可以定制更灵活的方案来处理后台解析文件的请求。

1.《enctype Spring文件上传功能源码剖析》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《enctype Spring文件上传功能源码剖析》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/junshi/1545151.html

上一篇

汉赋名句 曹操为求贤才,写下一首霸气诗,开篇就是千古名句,你绝对也背过

下一篇

河北容城最近的新闻 河北籍曹魏三大名将:任丘市一人,武邑县一人,容城县一人

安徽卫视电视节目表 今晚(9月12日 · 周四)全国部分卫视晚间电视节目预告

安徽卫视电视节目表 今晚(9月12日 · 周四)全国部分卫视晚间电视节目预告

●北京卫星电视 17:23健康之家 19:30老酒馆(34,35) 21:20我是大医生 ●浙江卫视 19:30剧院:陆地战争之王 21:30今天的评论 21:40看中国蓝 ●安徽电视台 19:33剧院:充满欢乐 21...

朱祁钰的皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人

  • 朱祁钰的皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人
  • 朱祁钰的皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人
  • 朱祁钰的皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人

朱祁钰皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人

  • 朱祁钰皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人
  • 朱祁钰皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人
  • 朱祁钰皇后 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人

朱祁钰 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人

  • 朱祁钰 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人
  • 朱祁钰 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人
  • 朱祁钰 《大明风华》朱祁钰的皇后,历史上也是一个被命运捉弄的悲情女人

庆余年庆帝 庆余年庆帝是好的还是坏的 是一个披着羊皮的狼

  • 庆余年庆帝 庆余年庆帝是好的还是坏的 是一个披着羊皮的狼
  • 庆余年庆帝 庆余年庆帝是好的还是坏的 是一个披着羊皮的狼
  • 庆余年庆帝 庆余年庆帝是好的还是坏的 是一个披着羊皮的狼

手机可以扫描文件吗 涨知识!原来华为手机自带扫描功能,纸质文件秒变电子档

  • 手机可以扫描文件吗 涨知识!原来华为手机自带扫描功能,纸质文件秒变电子档
  • 手机可以扫描文件吗 涨知识!原来华为手机自带扫描功能,纸质文件秒变电子档
  • 手机可以扫描文件吗 涨知识!原来华为手机自带扫描功能,纸质文件秒变电子档
纸质文件扫描成pdf 涨知识!原来华为手机自带扫描功能,纸质文件秒变电子档

纸质文件扫描成pdf 涨知识!原来华为手机自带扫描功能,纸质文件秒变电子档

很多朋友喜欢用华为手机,但你真的了解华为手机吗?我这么说是因为华为的手机里面隐藏着很多特别实用有趣的功能,不仅对我们的生活有很大的帮助,也提高了我们的工作效率。例如,在工作中经常需要将纸质文件转换成电子文件。其实华为手...

部分男性对丁真的态度让人无语 网友:这是嫉妒和狭隘

  • 部分男性对丁真的态度让人无语 网友:这是嫉妒和狭隘
  • 部分男性对丁真的态度让人无语 网友:这是嫉妒和狭隘
  • 部分男性对丁真的态度让人无语 网友:这是嫉妒和狭隘