转载:http://hi.baidu.com/javajavajava/blog/category
/**
* 上传文件
*/
public ActionForward upload(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UploadFileForm formBean = (UploadFileForm) form;
//JavaBean
UploadFile file = new UploadFile();
if (formBean.getUploadfile() != null
&& formBean.getUploadfile().getFileSize() > 0) {
//根据当前日期设置上传目录
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd/");
String pathdir = "images/uploadfile/"
+ dateFormat.format(new Date());
//得到服务器上的实际目录
String realpathdir = request.getSession().getServletContext()
.getRealPath(pathdir);
File savedir = new File(realpathdir);
//如果目录不存在,则新建
if (!savedir.exists()) {
savedir.mkdirs();
}
//获取上传文件的扩展名
String ext = formBean.getUploadfile().getFileName().substring(
formBean.getUploadfile().getFileName().lastIndexOf("."));
//用UUID产生文件名
String filename = UUID.randomUUID() + ext;
//生成一个文件输出流,将文件写到指定的目录中
FileOutputStream fileOutputStream = new FileOutputStream(new File(
savedir, filename));
fileOutputStream.write(formBean.getUploadfile().getFileData());
fileOutputStream.close();
//将文件路径保存到数据库
String filepath = pathdir + filename;
file.setFilepath(filepath);
uploadFileService.save(file);
request.setAttribute("message", "文件上传成功!");
request.setAttribute("urladdress", SiteUrl.readUrl("control.brand.list"));
}
分享到:
相关推荐
1. **配置Struts2 Action**:在`struts.xml`配置文件中,你需要定义一个Action,该Action负责处理文件上传请求。Action的类需要继承自`ActionSupport`,并覆盖`execute()`方法,以便处理上传的文件。 2. **设置...
通过分析和学习这些代码,你可以更好地理解和掌握Struts1中多文件上传和表单中传递List的实践方法。 总之,这个实例提供了关于Struts1中文件上传和复杂表单数据处理的实战经验,对于学习Java Web开发和Struts1框架...
综上所述,Struts1中的文件上传功能实现涉及到多个核心组件和技术点的综合运用。开发者需要对Struts1框架有深入的理解,并熟练掌握相关API的使用方法。此外,在实际开发过程中还需要注意安全性问题,比如防止恶意...
在这个“struts2上传文件源代码”中,我们将深入探讨Struts2如何实现文件上传功能,以及涉及到的相关知识点。 首先,文件上传是Web应用中常见的功能,它允许用户从本地计算机选择文件并将其发送到服务器。在Struts2...
1. **配置struts-config.xml**:在Struts1中,所有的动作配置都集中在`struts-config.xml`文件里。要实现文件上传,需要定义一个专门处理文件上传的Action,配置如下: ```xml <action path="/upload" type=...
在这个“Struts1实现的文件上传”项目中,我们将深入探讨如何在Struts1框架下实现文件上传功能,并不涉及文件下载的部分。 首先,理解文件上传的基本流程是至关重要的。在Web应用中,用户通过HTML表单选择本地文件...
3. **Struts配置**:在`struts-config.xml`中配置对应的`<action>`元素,指定处理文件上传请求的`Action`类。 4. **Action类**:编写`Action`类,处理文件上传请求。这里需要使用第三方库如Apache Commons ...
1. Struts1中的文件上传:在Struts1中,文件上传主要依赖于`commons-fileupload`和`commons-io`两个库。首先需要在`struts-config.xml`中配置`action`元素,启用流处理。然后在表单中使用`<html:file>`标签指定上传...
在本"基于Struts的文件上传下载源代码"中,我们可以深入理解Struts如何处理文件上传和下载操作,这对于初学者来说是一个非常实用的学习资源。 首先,文件上传在Web应用中是常见的功能,它允许用户从本地计算机选择...
在`struts.xml`配置文件中,为需要支持文件上传的Action添加`params`和`fileUpload`拦截器,并设置允许的最大上传大小。例如: ```xml <package name="default" namespace="/" extends="struts-default"> ...
在基于Struts2的文件上传下载功能中,它提供了处理用户上传文件和提供文件下载的服务。这个完整的源代码是实现这些功能的一个实例,经过测试确保了其正确性和可用性。 首先,我们要理解Struts2中的Action类。Action...
在Struts1中实现文件上传功能,常常是Web开发中的一个常见需求。而“带进度条”的文件上传则更进一步,它能为用户提供更好的用户体验,让用户在上传大文件时能够看到实时的上传进度。 首先,我们来理解一下Struts1...
Apache Commons FileUpload库是Struts1中处理文件上传的关键,它可以解析请求中的多部分内容,将文件内容分离出来并存储到服务器的临时目录。 要实现文件上传,你需要做以下几步: 1. **配置Struts1 ActionForm**...
在Struts1中,实现文件上传和下载功能是常见的需求,这对于处理用户提交的文件,如图片、文档等,至关重要。下面将详细解释如何在Struts1中实现这两个操作。 首先,我们关注文件上传。在Struts1中,文件上传主要...
在这个"struts实现文件上传和下载源代码"项目中,我们将会探讨如何使用Struts框架来实现在Web应用中进行文件的上传和下载功能,同时还会关注对于大文件(超过3MB)的处理策略。 1. **文件上传** 文件上传是Web应用...
Struts2对这些库进行了封装,使得文件上传的代码更加简洁,同时减少了不同上传任务之间的编程差异。 在进行文件上传时,HTML表单需要设置`enctype="multipart/form-data"`,这是为了指示浏览器以二进制流的形式发送...
首先,我们需要在Struts2的配置文件(struts.xml)中配置一个Action,该Action将处理文件上传请求。在Action配置中,我们需要指定一个result类型为"dispatcher"的result,并添加`<param name="allowedTypes">`来限制...
在Struts中,可以实现单文件和多文件的上传,并且为了提升用户体验,我们还可以添加进度条来显示文件上传的状态。本文将详细介绍如何在Struts中实现这两个功能,并带上传进度条。 首先,我们需要了解Struts中处理...
在Struts2框架中,文件上传是一个常见的功能,它允许用户通过Web应用程序上传文件到服务器。`codeFilter`在此上下文中通常是指一个自定义过滤器,用于在文件上传过程中进行额外的安全检查或处理。这个过滤器可以防止...
1. **文件上传组件**:在Struts2中,我们通常使用`Commons FileUpload`库来处理文件上传。这个库提供了处理多部分HTTP请求的能力,是Java中处理文件上传的标准库。我们需要在Struts2配置文件中引入对应的拦截器`...