SpringMVC初写(四)上传和下载功能的实现
一.文件上传
流程:
- 导入包commons-fileuplad组件和依赖包commons-io组件
- 配置springmvc支持上传的组件:
- 启动SpringMVC注解支持
- 配置上传解释器
- 构建一个上传表单
- 在业务控制器Controller中编写上传文件的处理方法代码
导入需要的的包
配置SpringMVC配置文件
注:因为在SpringMVC核心控制器DispacherServlet源码中,multipartResolver是一个固定加载属性,因此配置的上传解释器名字必须是multipartResolver。
前台构建一个上传表单
注:文件上传的前提(1)提交方式为Post,(2)enctype为multipart/form-data
控制器处理代码
多文件上传:
前台上传表单:
控制器处理代码
二.文件下载
流程:
- 读取本地文件
- 将读取的文件显示到页面上
- 页面点击下载,下载文件
- 解决中文乱码问题
前台界面:
控制器代码
负责跳转到文件下载页面(将文件名放入作用域中)
文件下载页面:
利用jstl语句将文件信息输出,在下载标签中调用控制器方法,并传回文件名参数
控制器方法:
处理中文的问题,是将文件信息以ISO-8859-1的编码格式打散后,重新以浏览器的字符集进行编码
转载于:https://www.cnblogs.com/lch-Hao/p/10765679.html
SpringMVC初写(四)上传和下载功能的实现相关推荐
- 使用SpringMVC框架实现文件上传和下载功能
使用SpringMVC框架实现文件上传和下载功能 (一)单个文件上传 ①配置文件上传解释器 <!-配置文件上传解释器 --> <mvc:annotation-driven>&l ...
- SpringMVC实现文件的上传和下载
SpringMVC实现文件的上传和下载http://www.bieryun.com/1120.html 前些天一位江苏经贸的学弟跟我留言问了我这样一个问题:"用什么技术来实现一般网页上文件的 ...
- 【Python学习 】Python实现的FTP上传和下载功能
一.背景 最近公司的一些自动化操作需要使用Python来实现FTP的上传和下载功能.因此参考网上的例子,撸了一段代码来实现了该功能,下面做个记录. 二.ftplib介绍 Python中默认安装的ftp ...
- MinIO基本使用(实现上传、下载功能)
MinIO基本使用(实现上传.下载功能) 1.简介 2.下载和安装 3.启动服务端 4.创建User和Bucket 4.1 创建User 4.1.1 生成accessKey和secretKey 4.2 ...
- python sftp_Python使用sftp实现上传和下载功能(实例代码)
在Python中可以使用paramiko模块中的sftp登陆远程主机,实现上传和下载功能. 1.功能实现 根据输入参数判断是文件还是目录,进行上传和下载 本地参数local需要与远程参数remote类 ...
- 代理连接FTP实现上传和下载功能
近日要实现FTP自动上传下载功能,但在办公区域受网络限制导致失败,最终研究通过办公区域的代理完成连接,并实现FTP上传和下载功能,同时将已上传和已下载的文件移动到默认的备份目录,保证定时任务不会重复获 ...
- XMLHttpRequest 对象实现文件上传和下载功能
XMLHttpRequest 对象实现文件上传和下载功能(内含源码哦
- SpringMVC与JSON传值,取值,使用SpringMVC实现文件的上传与下载,SpringMVC拦截器
一. JSON 1.1 什么是JSON 在实际开发中,通常需要和别的系统交换数据,数据交换的格式通常有XML和JSON等: JSON(JavaScript Object Notation:JavaSc ...
- SpringMVC实现文件的上传与下载
文件的上传与下载可以说是工作中经常使用的功能,现在整理一下,希望能够给大家一个参考.这里以 Maven 的形式来创建项目,相关的配置文件会把主要的内容列出来,其他头文件信息不再一一全部的列出.最后会把 ...
- 用SpringMVC框架实现图片上传与下载
1.新建一个Maven webapp项目,引入需要用的夹包,pom.xml文件的依赖包如下: <dependencies><!-- 用于生成图片的缩略图 --><depe ...
最新文章
- asp.net发布网站(转)
- java: \uxxxx unicode编码
- springboot 启动分析【难点】——如何自动扫描 @SpringBootApplication||如何加载自动配置类 @EnableAutoConfiguration||如何加载前端控制器
- 快速入门cocos2d-x jsbinding
- 跨行合并居中html标记语言,[前端Web]HTML语法最全解-建议收藏
- 参考文献要不要首行缩进_参考文献格式要求(2015-2016-2)
- 拓端tecdat|R语言特征选择——逐步回归
- .tar文件和.tar.gz文件
- TensorFlow by Google一个计算机视觉示例Machine Learning Foundations: Ep #2 - First steps in computer vision
- 如何查看Linux的系统是64位的还是32位的
- win10找回自带的windows照片查看器——打开jpg、png、gif、psd其他格式的图片
- 【数据库】SQL语句之修改语句(INSERT,UPDATE,DELETE)
- 关于电视剧评价指标的描述性分析
- 如何采用一套程序代码,实现系统的“千人千面”
- lamp mysql 密码_lamp 如何修改mysql密码
- IP地址和物理地址的区别和联系
- ibm是被联想收购了吗_联想收购IBM之后为什么出现品牌危机
- 6-7 快速排序 (15 分)
- winform工具1-图片去除水印
- 20个高级java开发面试题(带答案)
热门文章
- linux下实用工具,Linux下的实用工具(持续更新)
- c语言递归1到10联程,为什么这个递归能输出1到10
- gps l1带宽_民用GPS接收机可达到的最高更新速率是多少?
- 学计算机 数学日记,数学日记3篇
- 【2015沈阳区域赛F=HDU5514】Frogs(圆上n个青蛙跳统计跳劲哪些点---欧拉函数求和+思维)
- T(n) = 25T(n/5)+n^2的时间复杂度?
- css hot loader,怎么针对依赖包的css 单独写一条loader的规则,不开启 css modules
- PageRank算法简单实现
- 算法:从有序数组中移除重复的数据26. Remove Duplicates from Sorted Array
- 创建CocoaPods的Framework Swift组件化之路(下)