`
anson_xu
  • 浏览: 513248 次
  • 性别: Icon_minigender_1
  • 来自: 惠州
社区版块
存档分类

Struts2 annotation convention upload file 注释上传文件

F# 
阅读更多
Struts2 annotation convention upload file 注释上传文件
@InterceptorRefs({@InterceptorRef(value="fileUpload", params=

{"allowedTypes","image/bmp,image/PNG,image/gif,image/JPEG,image/JPG,image/jpg,application/x-

zip-compressed","maximumSize","20971520"}
),@InterceptorRef(value="defaultStack")})
@SuppressWarnings("serial")
public class UploadFileAction extends ActionSupport {

private File file;

private String fileFileName;

private String fileContentType;

public String getFileContentType() {
   return fileContentType;
}

public void setFileContentType(String fileContentType) {
   this.fileContentType = fileContentType;
}

public String getFileFileName() {
   return fileFileName;
}

public void setFileFileName(String fileFileName) {
   this.fileFileName = fileFileName;
}

public void setFile(File file) {
   this.file = file;
}

public File getFile(){
   return file;
}

public String execute(){
       System.out.println("begin upload file.... ");

 
   LinkPath link = LinkPath.newInstance();
   String dataPath = link.getdataPath();
 
   DateFormat format = new SimpleDateFormat("yyyyMMddHHmm");
        Date date=new Date();
        String dateDir = format.format(date);
        File f = new File(dataPath+"\\"+dateDir);
       
        if(!f.exists()){
        f.mkdirs();
        }
       
   File dataFile = new File(dataPath+"\\"+dateDir+"\\"+this.getFileFileName());
 
   try {
      //将第一个参数对应的 文件 copy 到 第二个参数对应的文件中
    FileUtil.copyFile(this.file,dataFile);
 
 
    if(dataFile.exists()){
   
     String fileType = dataFile.getPath().substring

(dataFile.getPath().lastIndexOf("."),dataFile.getPath().length());
   
     if(".zip".equals(fileType)||".ZIP".equals(fileType)){
      UpZIP zip = new UpZIP();
    
      zip.unzip(dataFile.getPath(), dataPath+"\\"+dateDir);
    
      dataFile.delete();
     }
    }
  
    Struts2Utils.renderText("{success:true,message:'上传成功'}");
   } catch (IOException e) {
    Struts2Utils.renderText("{success:flase,message:'失败'}");
    e.printStackTrace();
   }
   return null;
}
}
分享到:
评论

相关推荐

    在嵌入式jetty环境下运行struts2Annotation项目

    3. **Struts2 Annotation**:这是Struts2的一个特性,允许使用注解(如`@Action`、`@Result`等)来配置Action类和结果映射,替代传统的XML配置文件。 接下来,我们将探讨如何在Jetty中运行使用Struts2 Annotation的...

    struts2 annotation 文件下载

    import org.apache.struts2.convention.annotation.ParentPackage; import org.apache.struts2.convention.annotation.Result; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.spring...

    struts2 使用Annotation 配置的小例子

    在Struts2中,Annotation允许开发者无需XML配置文件就能定义Action、结果类型、拦截器等。 在"struts2 使用Annotation 配置的小例子"中,我们可能会看到以下几个核心的Annotation: 1. `@Action`: 这个Annotation...

    struts2annotation json

    标题“struts2annotation json”暗示我们将探讨如何在Struts2中使用注解来处理JSON相关的功能。首先,让我们深入理解Struts2的注解系统。 1. **Struts2注解**: - `@Action`: 这个注解用于标记一个方法为处理HTTP...

    Struts2之Annotation注解配置使用案例struts013

    在Struts2中,Annotation注解的引入为开发者提供了更加灵活和便捷的配置方式,使得无需在XML配置文件中进行繁琐的设置,可以直接在类或方法上通过注解来进行配置。本文将深入探讨Struts2中的Annotation配置,以及...

    STRUTS2 Convention零配置

    与之前的Codebehind插件不同,Convention插件更加彻底地摆脱了对配置文件的需求,包括struts.xml以及Annotation等传统配置方式,通过约定而非配置的方式自动完成框架的配置工作。 ### Convention 插件特性详解 ###...

    struts2 annotation 批量下载

    知识点:Struts2框架下的注解批量下载实现与临时文件管理 在Struts2框架中,使用注解(Annotation)可以极大地简化控制器类的配置,提高代码的可读性和维护性。本文将深入探讨如何利用Struts2的注解功能实现批量...

    struts2利用注解annotation实现文件下载

    ### Struts2 使用注解(Annotation)实现文件下载 在Web开发中,文件上传与下载是常见的需求之一。Struts2框架提供了强大的功能来支持这一需求。本文将详细介绍如何使用Struts2框架结合注解(Annotation)的方式...

    struts2零配置convention-plugin

    从struts2.1开始,struts2不再推荐使用Codebehind作为零配置插件,而是改为使用Convention插件来支持零配置,和Codebehind相比,Convention插件更彻底,该插件完全抛弃配置信息,不仅不需要是使用struts.xml文件进行...

    Struts2-rest插件(有注释)

    Convention 插件彻底地抛弃了配置信息,不仅不需要使用 struts.xml 文件进行配置,甚至不需要使用 Annotation 进行配置。而是由 Struts 2 根据约定来自动配置。 Convention 这个单词的翻译过来就是“约定”的意思。...

    struts2 hibernate3 spring2.5 annotation 整合

    文件Spring_3300_Registration_11可能是一个示例项目,包含了上述整合的实例,包括Action、Service、DAO、配置文件等,开发者可以通过学习和运行这个项目来理解和实践Struts2、Hibernate3、Spring2.5的整合以及注解...

    Struts2使用Annotation返回Json

    import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Result; import org.apache.struts2.interceptor.SessionAware; public class MyAction ...

    struts annotation Hello World

    import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Result; public class HelloWorldAction extends ActionSupport { @Action(value = "hello", results...

    有关struts2上传 有关struts2上传

    1. **添加依赖**:确保项目中包含了Struts2的文件上传插件,如`struts2-convention-plugin`或`struts2-core`的相应版本,它们包含了处理文件上传所需的类。 2. **修改struts.xml配置**:在`struts.xml`配置文件中,...

    struts2 Annotation 版本学习心得与例子

    Struts2的“零配置”特性是Struts2的新功能,可能会出现一些小Bug,所以企业开发者请慎重使用该特性, ...如果用的是Annotation的Struts2,就要将struts.xml去掉,否则即使将struts.xml中的内容注销,也会报错;

    struts2-Annotation

    在给定的“struts2-Annotation”主题中,重点是Struts2框架如何利用注解(Annotation)来增强其功能和简化配置。注解是一种元数据,可以在代码中嵌入,提供有关类、方法或字段的额外信息,而无需编写XML配置文件。 ...

    使用struts2的annotation验证

    博文链接:https://flym.iteye.com/blog/174358

    struts2 interceptor annotation plugin

    而"struts2 interceptor annotation plugin"则是Struts2框架提供的一种使用注解来配置拦截器的方式,这种方式更加简洁、直观,减少了XML配置文件的复杂性。 注解(Annotation)是Java编程语言的一个重要特性,它...

Global site tag (gtag.js) - Google Analytics