struts 2 annotation 配置文件上传下载

来源:互联网 发布:php集成开发包 编辑:程序博客网 时间:2024/06/06 00:07

struts 2 的action:

@Action(value="uploadFile",interceptorRefs={@InterceptorRef(params={"allowedTypes","image/bmp,image/jpeg,image/png,image/gif","maximumSize","2000000"},value="fileUpload"),@InterceptorRef("defaultStack")},results={@Result(location="/WEB-INF/pages/uploadResult.jsp",type="dispatcher"),@Result(name="input",location="/WEB-INF/pages/uploadError.jsp",type="dispatcher")},params={"savePath","/upload"})public String upload() {FileOutputStream fos = null;FileInputStream fis = null;byte[] buffer = new byte[1024];int len = 0;try {fos = new FileOutputStream(getSavePath() + "\\" + getUploadFileName());fis = new FileInputStream(getUpload());while ((len = fis.read(buffer)) > 0) {fos.write(buffer, 0, len);}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return SUCCESS;}

可以设置多个interceptor

fileUpload是interceptor的名称,可以在struts-default.xml中找到

allowedTypes是允许上传的文件类型

maximumSize是允许上传文件的大小限制,单位是字节

这些参数都可以在FileUploadInterceptor类中找到

还有,必须显式配置defaultStack

原创粉丝点击