android+action +actionform上传文件,ActionForm之文件上传
我们以一个例子来说明ActionForm之文件上传: (不需要引入任何jar包)
在页面建一表单:
测试struts上传文件//enctype="multipart/form-data"这个属性就是用于上传的,需要添加
标题:
文件:
//type类型为file
建立上传成功的页面:
在这个页面取出上传的文件的名字,包括标题:
标题:${uploadForm.title}
//从ActionForm中取出
文件名:${uploadForm.myfile.fileName }
建立ActionForm(使用静态的):
import org.apache.struts.action.ActionForm;
import org.apache.struts.upload.FormFile;
/**
* 上传ActionForm
* @author Administrator
*
*/
public class UploadActionForm extends ActionForm {
private String title;
//必须采用FormFile
private FormFile myfile;//文件的类型声明为FormFile,必须这样声明,使用这个来接收文件
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public FormFile getMyfile() {
return myfile;
}
public void setMyfile(FormFile myfile) {
this.myfile = myfile;
}
再写相应的action:
/**
* 上传Action
* @author Administrator
*
*/
public class UploadTestAction extends Action {@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UploadActionForm uaf = (UploadActionForm)form;//得到表单数据 System.out.println("title" + uaf.getTitle());//得到标题 FormFile myFile = uaf.getMyfile();//new一个FormFile,就会把这个文件放进去,也就得到这个文件(在action中调用FormFile,就可以得到上传文件)
if (myFile != null) {
System.out.println("fileName=" + myFile.getFileName());//通过这个对象可以得到文件的名字,文件的类型,大小,详细见文档
FileOutputStream fos = new FileOutputStream("c:\\" + myFile.getFileName());//new一个输出流,并存在C盘,名字就叫他自己的名字 fos.write(myFile.getFileData());//写入硬盘 fos.flush();
fos.close();
}
return mapping.findForward("success");
}
}
}
做相应的配置
测试就OK了
对可上传的文件大小以及临时目录包括缓存的配置:
实现这个功能是在struts-config.xml中配置的,
//controller 这个标签,有很多属性,具体使用见DTD(位于struts.jar中的org.apache.struts.resource中的struts-config-1-2.dtd内),nocache ="true"表示每次都会清理缓存
步骤总结:
* 页面的配置,如:
标题:
文件:
* ActionForm中使用FormFile来接收上传的文件,参见:UploadActionForm.java
* 在Action中调用FormFile取得上传文件数据,采用流输出,即完成上传,参见:UploadTestAction.java
* 采用标签配置上传参数,如:
来源:https://www.cnblogs.com/liuyang-1037/archive/2009/03/11/1409038.html
android+action +actionform上传文件,ActionForm之文件上传相关推荐
- android 文件并发读写,Android下,rxJava+retrofit 并发上传文件和串行上传文件的效率为什么差不多?...
有个功能需要同时上传N个文件.代码如下: ApiService as = ApiManager.getApiService(); final ExecutorService es = Executor ...
- android git上传出现错误,热更新上传patch包时提示上传失败,文件不合法
集成配置信息 classpath 'com.android.tools.build:gradle:3.3.2' classpath "com.tencent.bugly:tinker-sup ...
- Android:Volley实现参数,字符数组,文件,图片的上传
1.代码使用 RequestQueue queue = Volley.newRequestQueue(context); MultipartRequest multipartRequest = new ...
- Android webview支持H5页面通过js实现文件上传、图片上传
一.问题场景: 项目中遇到通过网页上传文件的需求,IOS直接是支持的,安卓端却没反应,有些机型甚至闪退.其实是Android的webview默认是不支持<input type="fil ...
- 腾讯对象存储服务COS加密签名上传文件与下载文件的剖析,福利提供给所有使用Android的小伙伴们!
在做一些用户需求的时候,公司往往需要工程师采集到更多有用的关于用户的个人信息,然后对用户群进行分析,今天我不是来分析这些的,今天我主要是说 腾讯推出的款云产品,那就是对象存储服务COS,这个产品面向所 ...
- Android Studio将本地计算机文件上传到模拟器scard文件中
本人在学习Android开发中遇到这样一个问题,将本地计算机中一个视频上传到模拟器的scard文件中视频的名字是1.MP4![这里写图片描述](https://img-blog.csdn.net/20 ...
- android webview 多文件上传,Android中的webview支持页面中的文件上传实例代码
Android webview在默认情况下是不支持网页中的文件上传功能的: 如果在网页中有,在android webview中访问时也会出现浏览文件的按钮 但是点击按钮之后没有反应... 那么如何能够 ...
- java action 上传文件_Struts2实现单文件或多文件上传功能
一.简述 Struts2的文件上传其实也是通过拦截器来实现的,只是该拦截器定义为默认拦截器了,所以不用自己去手工配置, 二.指定用户上传文件的大小,有两种方式 1)默认是在default.proper ...
- 【Android实战】----基于Retrofit实现多图片/文件、图文上传
本文代码详见:https://github.com/honghailiang/RetrofitUpLoadImage 一.再次膜拜下Retrofit Retrofit无论从性能还是使用方便性上都很屌! ...
- Android 使用 okhttp3和retrofit2 进行单文件和多文件上传
目录 前言 一.单文件上传 二.多文件上传 总结 前言 开发项目中需要进行单文件多文件的上传功能,下面演示的ApiResponse是自己分装的返回值,要根据自己的项目来完成.使用的mvvm框架,kot ...
最新文章
- 记忆模糊、记忆泛化的关键分子开关被发现
- 安安猜价格聪明机器人_5 项降噪优化,石头扫地机器人 T6 安静也有大吸力
- httpClient创建对象、设置超时
- 15数码 java_A*算法求解15数码问题
- WINDOWS SERVER 2003 R2 AD域控安装过程实践
- 运用PhantomJS测试JavaScript
- 存储单位:位、字节、字符、千字节KB、兆字节MB
- vm压缩linux vmdk文件,vmware下vmdk文件越来越大的解决方法探讨
- 采购精英的行为准则(精典)
- ZBrush新手推荐使用这17个小技巧和常用快捷键、笔刷
- storm DRPC例子
- Linux 下wifi 驱动开发(一)—— WiFi基础知识解析
- Java中什么时候用接口,什么时候用抽象类
- python如何读取数据时出现错误_python读取excel数据报xlrd.biffh.XLRDError错误原因,,比如说我要读取 http...
- STM32CubeMX配置SD卡+DMA+Fatfs文件系统
- python中绝对角度是什么意思_计算角度是否介于两个角度之间
- 关于社交的书籍推荐,这本书最实用
- Unity初始化预制件之后得位置问题
- PLC的工作流程、特点和应用分类
- 【PNN分类】基于灰狼鹰算法优化pnn神经网络实现数据分附matlab代码
热门文章
- matlab能否用递推公式给出表达式,matlab定积分运算
- Unity获取安卓手机运营商,电量,wifi信号强度,本地Toast,获取已安装apk,调用第三方应用,强制自动重启本应用...
- 经纬度转小数格式 java_怎么把经纬度转成小数
- CIO40:IT人22-30岁职业规划
- phpyun怎么采集_phpyun采集
- 关于TF卡内存卡sd卡等读写速度出现大幅下降解决办法之一
- 汇编语言怎么编译python_汇编语言编译器的编写方法
- 转载-PCB板加工流程
- 10月SCI/SSCI/EI刊源更新,新增1区TOP,2022年仅剩不到三个月,还在观望吗?
- 2021-09-28 网安实验-取证分析-Stuxnet病毒