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;
}
}
分享到:
相关推荐
3. **Struts2 Annotation**:这是Struts2的一个特性,允许使用注解(如`@Action`、`@Result`等)来配置Action类和结果映射,替代传统的XML配置文件。 接下来,我们将探讨如何在Jetty中运行使用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允许开发者无需XML配置文件就能定义Action、结果类型、拦截器等。 在"struts2 使用Annotation 配置的小例子"中,我们可能会看到以下几个核心的Annotation: 1. `@Action`: 这个Annotation...
标题“struts2annotation json”暗示我们将探讨如何在Struts2中使用注解来处理JSON相关的功能。首先,让我们深入理解Struts2的注解系统。 1. **Struts2注解**: - `@Action`: 这个注解用于标记一个方法为处理HTTP...
在Struts2中,Annotation注解的引入为开发者提供了更加灵活和便捷的配置方式,使得无需在XML配置文件中进行繁琐的设置,可以直接在类或方法上通过注解来进行配置。本文将深入探讨Struts2中的Annotation配置,以及...
与之前的Codebehind插件不同,Convention插件更加彻底地摆脱了对配置文件的需求,包括struts.xml以及Annotation等传统配置方式,通过约定而非配置的方式自动完成框架的配置工作。 ### Convention 插件特性详解 ###...
知识点:Struts2框架下的注解批量下载实现与临时文件管理 在Struts2框架中,使用注解(Annotation)可以极大地简化控制器类的配置,提高代码的可读性和维护性。本文将深入探讨如何利用Struts2的注解功能实现批量...
### Struts2 使用注解(Annotation)实现文件下载 在Web开发中,文件上传与下载是常见的需求之一。Struts2框架提供了强大的功能来支持这一需求。本文将详细介绍如何使用Struts2框架结合注解(Annotation)的方式...
从struts2.1开始,struts2不再推荐使用Codebehind作为零配置插件,而是改为使用Convention插件来支持零配置,和Codebehind相比,Convention插件更彻底,该插件完全抛弃配置信息,不仅不需要是使用struts.xml文件进行...
Convention 插件彻底地抛弃了配置信息,不仅不需要使用 struts.xml 文件进行配置,甚至不需要使用 Annotation 进行配置。而是由 Struts 2 根据约定来自动配置。 Convention 这个单词的翻译过来就是“约定”的意思。...
文件Spring_3300_Registration_11可能是一个示例项目,包含了上述整合的实例,包括Action、Service、DAO、配置文件等,开发者可以通过学习和运行这个项目来理解和实践Struts2、Hibernate3、Spring2.5的整合以及注解...
import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Result; import org.apache.struts2.interceptor.SessionAware; public class MyAction ...
import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Result; public class HelloWorldAction extends ActionSupport { @Action(value = "hello", results...
1. **添加依赖**:确保项目中包含了Struts2的文件上传插件,如`struts2-convention-plugin`或`struts2-core`的相应版本,它们包含了处理文件上传所需的类。 2. **修改struts.xml配置**:在`struts.xml`配置文件中,...
Struts2的“零配置”特性是Struts2的新功能,可能会出现一些小Bug,所以企业开发者请慎重使用该特性, ...如果用的是Annotation的Struts2,就要将struts.xml去掉,否则即使将struts.xml中的内容注销,也会报错;
在给定的“struts2-Annotation”主题中,重点是Struts2框架如何利用注解(Annotation)来增强其功能和简化配置。注解是一种元数据,可以在代码中嵌入,提供有关类、方法或字段的额外信息,而无需编写XML配置文件。 ...
博文链接:https://flym.iteye.com/blog/174358
而"struts2 interceptor annotation plugin"则是Struts2框架提供的一种使用注解来配置拦截器的方式,这种方式更加简洁、直观,减少了XML配置文件的复杂性。 注解(Annotation)是Java编程语言的一个重要特性,它...