資源簡介
具體博客地址:
http://blog.csdn.net/hncdyj/article/details/8722297
代碼片段和文件信息
package?org.activiti.demo.action;
import?java.io.File;
import?javax.annotation.Resource;
import?org.activiti.demo.base.baseAction;
import?org.activiti.demo.engine.ProcessEngineCore;
import?org.activiti.demo.utils.UnZipFile;
import?org.apache.commons.io.FileUtils;
import?org.apache.struts2.convention.annotation.Action;
import?org.apache.struts2.convention.annotation.Namespace;
import?org.apache.struts2.convention.annotation.ParentPackage;
import?org.apache.struts2.convention.annotation.Result;
import?org.slf4j.LoggerFactory;
import?org.springframework.context.annotation.Scope;
import?org.springframework.stereotype.Controller;
import?ch.qos.logback.classic.Logger;
/**
?*?
?*?@title:?FileUploadAction.java
?*?@Description:?org.activiti.demo.action
?*?@Package?org.activiti.demo.action
?*?@author?hncdyj123@163.com
?*?@date?2013-3-14
?*?@version?V1.0
?*?
?*/
@SuppressWarnings(“serial“)
@Controller(“fileUploadAction“)
@Scope(“protype“)
@Namespace(“/activiti/upload“)
@ParentPackage(“json-default“)
public?class?FileUploadAction?extends?baseAction?{
/**?日志對象?**/
private?static?final?Logger?logger?=?(Logger)?LoggerFactory.getLogger(FileUploadAction.class);
/**?日志對象?**/
private?File?template;
/**?文件名?**/
private?String?templateFileName;
@Resource(name?=?“processEngineCore“)
private?ProcessEngineCore?processEngineCore;
/**
?*?資源文件上傳
?*?
?*?@return
?*/
@Action(value?=?“upload“?results?=?{?@Result(type?=?“json“?params?=?{?“root“?“result“?“contentType“?“text/html“?})?})
public?String?upload()?{
try?{
if?(template?==?null)?{
return?ERROR;
}
if?(validateFileSize(template))?{
this.setMessage(“文件超過5M!“);
return?SUCCESS;
}
//?將上傳的文件拷貝到臨時目錄中
copyFileToTempFolder(System.getProperty(“user.dir“));
//?處理上傳到臨時目錄中的文件
String?str?=?handleTempFile(System.getProperty(“user.dir“));
//?發(fā)布流程
processEngineCore.deploymentInstance(str);
}?catch?(Exception?e)?{
e.printStackTrace();
logger.error(e.getMessage());
return?ERROR;
}
return?SUCCESS;
}
/**
?*?將上傳的文件拷貝到臨時目錄中
?*?
?*?@param?tempFilePath
?*?@throws?Exception
?*/
private?void?copyFileToTempFolder(String?tempFilePath)?throws?Exception?{
//?獲取讀入的文件(參數1:文件存放的路徑。參數2:上傳的文件的名稱)
File?file?=?new?File(new?File(tempFilePath)?templateFileName);
//?查看上傳文件要存放的文件夾是否存在,如果不存在就創(chuàng)建文件目錄
if?(!file.getParentFile().exists())?{
file.getParentFile().mkdirs();
}
FileUtils.copyFile(template?file);
}
/**
?*?處理上傳到臨時目錄中的文件
?*?
?*?@param?tempFilePath
?*?@return?流程文件路徑
?*/
private?String?handleTempFile(String?tempFilePath)?throws?Exception?{
//?得到上傳文件后綴
String?fileSuffix?=?templateFileName.substring(templateFileName.lastIndexOf(“.“)?+?1?templateFileName.length());
//?zip文件
if?(“zip“.equals(fileSuffix))?{
logger.debug(“zip?temp?dir?is?“?+?tempFilePath?+?File.separator?+?templateFileName);
UnZipFile.unzip(tempFilePat
- 上一篇:迪文HMI標準字庫及部分擴展字庫參考
- 下一篇:換熱器仿真
評論
共有 條評論