网易首页 > 网易号 > 正文 申请入驻

长沙一度软件教育学校| 学员技术讲坛 |Smartupload(上传下载)

0
分享至

注意先导入jar包

单文件上传

必须使用enctype进行分装,表示将表单按照二进制的方式提交。即所有的操作表单此时不再是分别提交,而是将所有内容都按照二进制的方式提交。

Jsp页面

Servlet页面:

//设置上传路径

String fliePath=getServletContext().getRealPath("/")+"upload";

System.out.println(fliePath);

File file=new File(fliePath);

//判断路径是否存在

if(!file.exists()){

* mkdirs:这个方法可以在不知道偶没有父类文件夹的情况下,创建文件夹

* mkdir:必须在有父类的文件夹下创建文件

file.mkdirs();

//实例化上传组件

SmartUpload su=new SmartUpload();

//初始化

su.initialize(getServletConfig(),request,response);

//设置上传文件对象大小

su.setMaxFileSize(1024*1024*10);

//设置所有文件大小

su.setTotalMaxFileSize(1024*1024*100);

//设置允许上传文件类型

su.setAllowedFilesList("txt,jpg,gif,png");

String result = "上传成功!";

try {

//设置禁止上传的文件类型

su.setDeniedFilesList("rar,jsp,js");

//上传文件

try {

su.upload();

} catch (SmartUploadException e) {

e.printStackTrace();

//保存文件

try {

su.save(fliePath);

} catch (SmartUploadException e) {

e.printStackTrace();

//获取上传的文件

com.jspsmart.upload.File tempFile = su.getFiles().getFile(0);

//获取上传文件的表单当中file属性的name值

tempFile.getFieldName();

System.out.println("---"+tempFile.getFieldName());

//获取上传的文件名

tempFile.getFileName();

System.out.println("文件名"+tempFile.getFileName());

//获取上传文件的大小

tempFile.getSize();

System.out.println("文件大小"+tempFile.getSize());

//获取上传文件的后缀名

tempFile.getFileExt();

System.out.println("文件的后缀名"+tempFile.getFileExt());

//获取上传文件的上传路径

tempFile.getFilePathName();

System.out.println("文件的全名 "+tempFile.getFilePathName());

} catch (SQLException e) {

result="上传失败";

e.printStackTrace();

多文件上传与单文件上传差不多只要改动前台代码就行了

注:上传多少个就加多少个file字段

下载:

Jsp页面:

1.jpg

注意:下载的value值应该与上传的文件名一致否则会报错

Servlet页面:

//获取fileName的值

String fileName=request.getParameter("fileName");

//实例化SmartUpload对象

SmartUpload su=new SmartUpload();

su.initialize(getServletConfig(), request, response);

su.setContentDisposition(null);

try {

su.downloadFile("/file/"+fileName);

} catch (SmartUploadException e) {

e.printStackTrace();

多文件下载:

Jsp页面

1.jpg 2.jpg

3.jpg

Servlet页面:

String name=request.getParameter("fileName ");

//将文件打包成压缩包格式

response.setContentType("application/x-msdownload");

response.setHeader("Content-Dispositon", "attachment;filename=test.zip");

//设置下载路径

SmartUpload su=new SmartUpload();

request.getParameter("name");

String filePath=getServletContext()

.getRealPath("/")+"file/";

String file []=request.

getParameterValues("fileName");

ZipOutputStream zos = new ZipOutputStream(response.getOutputStream());

for(String fileNumber:file){

File f=new File(filePath+file);

zos.putNextEntry(new ZipEntry(fileNumber));

FileInputStream fis = new FileInputStream(f);

byte [] b=new byte[1024];

int n=0;

while((n=fis.read(b))!=-1){

zos.write(b, 0,n);

//清空缓存区

zos.flush();

//释放资源

fis.close();

zos.setComment("描述信息");

zos.flush(); zos.close();

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
周星驰短剧《金猪玉叶》正式上线:一小时播放量破100万

周星驰短剧《金猪玉叶》正式上线:一小时播放量破100万

鞭牛士
2024-06-02 19:04:07
复旦大学冯玉军:中国人民支持乌克兰,俄罗斯必败,乌会是胜利者

复旦大学冯玉军:中国人民支持乌克兰,俄罗斯必败,乌会是胜利者

泸沽湖
2024-06-02 12:07:47
广大烟民撑起上海税收,2亿的烟叶撬动了400多亿的税收收入

广大烟民撑起上海税收,2亿的烟叶撬动了400多亿的税收收入

爆角追踪
2024-06-02 15:55:49
中国军事科学院原副院长何雷中将:请菲方先回答四个问题!

中国军事科学院原副院长何雷中将:请菲方先回答四个问题!

新京报政事儿
2024-06-01 13:27:50
泽连斯基在香格里拉对话会上进行灵魂拷问,你们不能即当又立!

泽连斯基在香格里拉对话会上进行灵魂拷问,你们不能即当又立!

刀刀说事
2024-06-02 18:53:43
吃不消!温州老娘客当小三被曝光

吃不消!温州老娘客当小三被曝光

温晓生
2024-06-02 16:45:04
东莞民办高中数据大PK:录取分数线最多相差142分

东莞民办高中数据大PK:录取分数线最多相差142分

南方都市报
2024-05-31 18:24:32
蔡斌为何雪藏朱婷?央视解说给出的分析你赞同吗,惠若琪一针见血

蔡斌为何雪藏朱婷?央视解说给出的分析你赞同吗,惠若琪一针见血

何老师呀
2024-06-02 22:16:34
中国女排惨败意大利风波升级!排协深夜摊牌,蔡斌下课悬念揭晓

中国女排惨败意大利风波升级!排协深夜摊牌,蔡斌下课悬念揭晓

二哥聊球
2024-06-03 00:06:13
泽连斯基指责龙国帮助俄罗斯破坏在瑞士举行的和平峰会

泽连斯基指责龙国帮助俄罗斯破坏在瑞士举行的和平峰会

亡海中的彼岸花
2024-06-03 03:00:03
当普通人都感觉经济很难的时候,其实经济危机早就全面爆发了

当普通人都感觉经济很难的时候,其实经济危机早就全面爆发了

芯怡飞
2024-06-01 14:19:03
特朗普入驻TikTok 粉丝已破60万!

特朗普入驻TikTok 粉丝已破60万!

直新闻
2024-06-02 18:57:54
第一批小米车主:我给雷军这些建议

第一批小米车主:我给雷军这些建议

中国企业家杂志
2024-06-02 12:23:21
很严重,很多人的工资已经发不下来了!

很严重,很多人的工资已经发不下来了!

霹雳炮
2024-06-02 23:22:49
两女共侍一夫,关系却情同姐妹,生前三人同行,死后则三人葬同穴

两女共侍一夫,关系却情同姐妹,生前三人同行,死后则三人葬同穴

可乐88
2024-06-02 09:53:57
家长:恢复八十年代的教材刻不容缓,现在的教材简直乱来!

家长:恢复八十年代的教材刻不容缓,现在的教材简直乱来!

李老师讲最真教育
2024-06-02 16:18:10
106个国家确认出席瑞士和平峰会,泽连斯基称俄罗斯试图破坏峰会

106个国家确认出席瑞士和平峰会,泽连斯基称俄罗斯试图破坏峰会

山河路口
2024-06-02 16:35:18
美军启用155毫米炮弹新生产线

美军启用155毫米炮弹新生产线

参考消息
2024-05-31 10:03:53
4-2!失误葬送努力,陈梦止步四强,孙颖莎复仇,决战海产德比战

4-2!失误葬送努力,陈梦止步四强,孙颖莎复仇,决战海产德比战

钉钉陌上花开
2024-06-02 21:25:57
误解蔡斌了?李盈莹解释弃用朱婷原因,大婷在场边举动能反映问题

误解蔡斌了?李盈莹解释弃用朱婷原因,大婷在场边举动能反映问题

三十年莱斯特城球迷
2024-06-02 23:52:44
2024-06-03 06:14:44
一度软件教育学校
一度软件教育学校
专业的湖南软件职业学校
401文章数 25关注度
往期回顾 全部

科技要闻

黄仁勋:2026年将推下代GPU架构平台Rubin

头条要闻

女子称穿7cm厚洞洞鞋下楼时崴脚摔倒 左腿粉碎性骨折

头条要闻

女子称穿7cm厚洞洞鞋下楼时崴脚摔倒 左腿粉碎性骨折

体育要闻

从0-1到2-1!石宇奇绝地反击逆转队友李诗沣,豪夺赛季第3冠

娱乐要闻

白玉兰提名:胡歌、范伟争视帝

财经要闻

新造车5月销量: 小鹏乏力 问界暂"缺席"

汽车要闻

吉利银河E5 Flyme Auto智能座舱首发

态度原创

艺术
教育
数码
房产
公开课

艺术要闻

穿越时空的艺术:《马可·波罗》AI沉浸影片探索人类文明

教育要闻

TTS新传论文带读:中国互联网30年!一篇文章就给整明白!!!

数码要闻

华硕 ROG 宣布 6 月 3 日直播发布新幻 16 Air 笔记本与外设新品

房产要闻

重磅!琼海出台楼市新政:住房出租、挂牌计划出售,都可减套数!

公开课

近视只是视力差?小心并发症

无障碍浏览 进入关怀版