当前位置: 首页 > article >正文

smartupload实现简单的文件上传

smartuploa实现简单的文件上传

文件上传实质上就是客户端发起请求,将一个大数据IO流上传到服务器

步骤:

1.将jar包添加到项目中:smartupload.jar

2.创建smartupload对象并初始化

//创建对象
SmartUpload smartUpload = new SmartUpload();
//获得jsp的pageContent对象并初始化
PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, req, resp, null, false, 1024, true);
smartUpload.initialize(pageContext);
//编码
smartUpload.setCharset("utf-8");

getPageContext()方法

参数的含义

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PWaOAQWp-1606465884917)(https://i.loli.net/2020/11/26/hJzWE5XqgsLcpG3.png)]

3.调用SmartUpload对象的upload()方法上传文件

//文件上传
try {smartUpload.upload();
} catch (SmartUploadException e) {e.printStackTrace();
}

截止目前,文件就被上传到了服务器,但服务器并没有保存

4. 保存文件到指定位置

/*保存文件*/
//得到smartUpload对象中文件数组的第1个文件
File file = smartUpload.getFiles().getFile(0);
//得到该文件的信息
String fileName = file.getFileName();
//指定存储路径
String path = "uploadfile/"+fileName;
//存储
try {file.saveAs(path,SmartUpload.SAVE_VIRTUAL);
} catch (SmartUploadException e) {e.printStackTrace();
}

至此,数据文件已经被存放到了某个指定路径下。接下来就可以自己决定如何在前端显示。

public void saveAs(String path, int optionSaveAs)

其中,path是另存的文件路径,optionSaveAs是另存的选项,该选项有三值:

  • SAVEAS_PHYSICAL表明以操作系统的根目录为文件根目录另存文件,
  • SAVEAS_VIRTUAL表明以Web应用程序的根目录为文件根目录另存文件,
  • SAVEAS_AUTO则表示让组件决定,

当Web应用程序的根目录存在另存文件的目录时,它默认会选择SAVEAS_VIRTUAL,否则会选择SAVEAS_PHYSICAL。

smartupload常用方法

在这里插入图片描述

smaryupload中文文档:

https://www.cnblogs.com/mycodelife/archive/2009/04/26/1444132.html

http://www.lryc.cn/news/2416190.html

相关文章:

  • 基于 Zen 创建一个 Drupal 7 的主题(模板) ,一份简单的Drupal模板教程
  • 计算机视频教程大全
  • Java游戏开发 —— 俄罗斯方块
  • 脚本报错 未结束的字符串常量 可能导致的原因
  • Wave音频格式解析
  • linux常用命令—— 磁盘管理(十二)
  • CCTouch触摸事件
  • java递归函数的解析
  • 全国大学生统计建模大赛历年获奖论文集下载教程(知网)
  • adobe dreamweaver cs5序列号
  • 安卓开发学习笔记(1) preferences实现设置界面
  • Hook api! 如何拦截系统api, 让它做你想做的事!
  • 程序框图与计算机程序,_算法与程序框图_ppt.ppt
  • MyEclipse-7.5.0版注册码破解及激活操作
  • 最全音频总线汇总
  • Web 项目中分享到微博、QQ空间等分享功能
  • CheckBoxList、DropDownList、ListBox、RadioButtonList、BulletedList对于符号的解释区别
  • BeyondCompare3密钥过期怎么办?不用再找新的密钥,一招帮你搞定!
  • dell 笔记本禁用触摸板方法
  • 【游戏逆向】CS1.6无限手雷辅助
  • 红客联盟是什么?红客需要传承!
  • 用WordPress开发app之拿去即用的Blog-App
  • 屏幕录像专家6.0_电脑屏幕录像直播软件推荐?功能全面的专业软件分享
  • WSockExpert[抓包工具]
  • 开源软件抄袭 美国_本网站共享来自美国政府多个项目的开源代码
  • 404是什么意思,404错误页面有什么用?
  • Freehostia 老牌稳定免费空间申请教学
  • Ecall测试,ITU-T P.1140 车载紧急呼叫系统语音测试
  • python-正则表达式及应用(b站弹幕屏蔽)
  • 我的ESP32学习(5)AP和后续长远布局