Struts1文件上传
package org.zln.struts.domain; import org.apache.struts.upload.FormFile; /**
* Created by sherry on 000021/5/21 21:06.
*/
public class RegUser { /*文件上传*/
private FormFile photo; public FormFile getPhoto() {
return photo;
}
public void setPhoto(FormFile photo) {
this.photo = photo;
} }
<%@ taglib prefix="html" uri="http://struts.apache.org/tags-html" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" %>
<html>
<head>
<title>注册用户</title>
</head>
<body> <html:form action="/upload" method="post" enctype="multipart/form-data">
<table>
<caption><h2>文件上传</h2></caption>
<tr>
<td>文件</td>
<td>
<html:file property="regUser.photo"/>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<html:submit>
<bean:message key="info.submit" bundle="message"/>
</html:submit>
</td>
</tr>
</table>
</html:form>
</body>
</html>
package org.zln.struts.action; import org.apache.commons.lang3.StringUtils;
import org.apache.struts.Globals;
import org.apache.struts.action.*;
import org.apache.struts.upload.FormFile;
import org.zln.struts.domain.Gender;
import org.zln.struts.domain.Speciality;
import org.zln.struts.form.RegUserForm; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.UUID; /**
* Created by coolkid on 2015/5/23 0023.
*/
public class UserAction extends Action {
...... private String upload(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws IOException {
RegUserForm regUserForm = (RegUserForm) form;
FormFile photo = regUserForm.getRegUser().getPhoto();
System.out.println(photo.getFileName()+
":"+photo.getFileSize());
//response.setContentType("text/html;charset=UTF-8");//过滤器已经做了这活儿
/*response.getWriter().print(photo.getFileName() +
":" + photo.getFileSize());*/ InputStream inputStream = photo.getInputStream();
String savePath = request.getServletContext().getRealPath("/upLoad");
File upDir = new File(savePath);
if (!upDir.exists()){
upDir.mkdirs();
System.out.println(savePath+"\n目录创建成功");
}
System.out.println("path:"+savePath);
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(new File(upDir, UUID.randomUUID()+photo.getFileName())));
byte[] bytes = new byte[1024];
int len;
while ((len = inputStream.read())>0){
bufferedOutputStream.write(bytes,0,len);
}
bufferedOutputStream.close();
inputStream.close();
System.out.println("文件上传成功");
return "SUCCESS";
} ...... }
Struts1文件上传的更多相关文章
- Struts1文件上传、单文件、多文件上传【Struts1】
将struts1文件上传的操作汇总了一下,包括单文件上传和多文件上传,内容如下,留作备忘: Struts2实现文件上传的文章(http://blog.csdn.net/itwit/article/d ...
- jsp\struts1.2\struts2 中文件上传(转)
jsp\struts1.2\struts2 中文件上传 a.在jsp中简单利用Commons-fileupload组件实现 b.在struts1.2中实现c.在sturts2中实现现在把Code与大家 ...
- Struts1.3——文件上传和下载
1.Struts文件上传 在Web开发中,会经常涉及到文件的上传和下载,比如在注册账户的时候,我们需要上传自己的头像等. 我们可以利用Struts很方便地实现文件的上传. 1.1 开发步骤 现在,假设 ...
- JavaWeb -- Struts1 多文件上传与下载 DownloadAction, DispatchAction
1. 多文件上传与下载 上传下载jsp: <%@ page language="java" import="java.util.*" pageEncodi ...
- struts2 笔记02 文件上传、文件下载、类型转换器、国际化的支持
Struts2的上传 1. Struts2默认采用了apache commons-fileupload 2. Struts2支持三种类型的上传组件 3. 需要引入commons-fileupload ...
- android和struts2实现android文件上传
1.开发准备如下2个工具类 package org.lxh.util; import java.io.BufferedReader; import java.io.InputStreamReader; ...
- 04springMVC结构,mvc模式,spring-mvc流程,spring-mvc的第一个例子,三种handlerMapping,几种控制器,springmvc基于注解的开发,文件上传,拦截器,s
1. Spring-mvc介绍 1.1市面上流行的框架 Struts2(比较多) Springmvc(比较多而且属于上升的趋势) Struts1(即将被淘汰) 其他 1.2 spring-mv ...
- JavaWeb -- Struts2,对比, 简单表单提交,校验,防重复提交, 文件上传
Struts2核心流程图 1. Struts2 和 Struts1 对比 struts1:基于Servlet(ActionServlet),actionForm众多(类的爆炸),action单例(数据 ...
- springMVC3.0(文件上传,@RequestMapping加參数,@SessionAttributes,@ModelAttribute,转发,重定向,数值获取,传參,ajax,拦截器)
1.项目包结构例如以下: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg==/font/5a6L5L2T/fontsiz ...
随机推荐
- chromium之tracked
//------------------------------------------------------------------------------ // Tracked is the b ...
- 解决Nginx: [error] open() "/usr/local/Nginx/logs/Nginx.pid" failed(2:No such file or directory)
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
- 03 shell编程之case语句与函数
本文所有内容均来自当年博主当年学习笔记,若有不足欢迎指正 Shell编程之case语句与函数 学习目标: 掌握case语句编程 掌握shell函数的使用 目录结构: Case语句 Case语句的作用 ...
- XML文档处理
1)CDATA部分用<![CDATA[和]]>来限定其界限,它们是字符数据的一种特殊形式,可用使用它们来囊括那些含有<.>,&之类字符的字符串,而不必将它们解释为标记例 ...
- apache使用.htaccess文件中RewriteRule重定向后,URL中的加号无法解析
今天在使用.htaccess做伪静态的时候,发生一件怪事,URL里存在C++时会有问题,在处理C++这个词的时候,无论如何,$_GET都得不到++,只能得到C空格. 一开始我以为是没用urlencod ...
- python 排列组合
笛卡尔积(product): 假设集合A={a, b},集合B={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2) ...
- python2.7练习小例子(十)
10):古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析:兔子的规律为数列1,1 ...
- xss挑战赛小记 0x03(xssgame)
0x00 继续做xss吧 这次是xssgame 地址 http://www.xssgame.com/ 一共八关 学到了很多东西 0x01 啥也没有 <svg/onload="alert ...
- 在WPF中自定义控件(3) CustomControl (下)
原文:在WPF中自定义控件(3) CustomControl (下) 在WPF中自定义控件(3) CustomControl (下) ...
- Ubuntu server中 samba的安装和简单配置
samba是Linux系统上的一种文件共享协议,可以实现Windows系统访问Linux系统上的共享资源,现在介绍一下如何在Ubuntu 14.04上安装和配置samba 工具/原料 Ubuntu ...