Struts 2+uploadify 다 중 파일 업로드 인 스 턴 스
일단 제 가 쓰 는 건 요. Jquery Uploadify 3.2 버 전
관련 CSS 가 져 오기 JS
<link rel="stylesheet" type="text/css" href="<%=basePath%>css/uploadify/uploadify.css" rel="external nofollow" >
<script src="<%=basePath%>js/jquery.min.js"></script>
<script src="<%=basePath%>js/uploadify/jquery.uploadify.min.js"></script>
다음은 업 로드 된 JSP 페이지 코드
<form action="" method="post" >
<input type="file" name="img_file" id="img_file">
<div id="uploadfileQueue" ></div>
<div id="imgs" ></div>
<div id="dialog-message" ></div>
</form>
<p>
<a href="javascript:void(0);" rel="external nofollow" onclick="myUpload()"> </a>
<a href="javascript:$('#img_file').uploadify('cancel')" rel="external nofollow" > </a>
</p>
여기 가 제일 중요 한 JS 입 니 다. 코드
$(function(){
$("#img_file").uploadify({
auto:false,//
height: 30,
buttonText:' ',
cancelImage:'<%=basePath%>img/uploadify/uploadify-cancel.png',
swf : '<%=basePath %>js/uploadify/uploadify.swf',
// expressInstall:'js/uploadify/expressInstall.swf',
uploader : '<%=basePath%>json/fileUploadAction.action', // action
width : 120 ,
'multi': true, // true
'filesSelected': '4',
queueID:'uploadfileQueue',
fileObjName:'img_file', // Action file
/*
formData:{ //
'userid':'111',
'username':'tom',
'rnd':'111'
},
*/
fileTypeDesc:' :jpg,jpge,gif,png',
fileTypeExts:'*.jpg;*.jpge;*.gif;*.png',//*.jpg;*.jpge;*.gif;*.png
queueSizeLimit : 4,// 4
// simUploadLimit:1,// 1
fileSizeLimit:'2097152',// 2M
// ,
onSelectError:function(file, errorCode, errorMsg){
switch(errorCode) {
case -100:
alert(" 4 !");
break;
case -110:
alert(" ["+file.name+"] 2M !");
break;
case -120:
alert(" ["+file.name+"] !");
break;
case -130:
alert(" ["+file.name+"] !");
break;
}
}, //
// , data
onUploadSuccess:function(file, data, response){
var objs = eval('('+data+')');
var phtml = "<span><img style='width:150;height:150' src='/uploads/"+objs.filename+"'></span>";
if($("#imgs span").length==0){
$("#imgs").html(phtml);
}else{
$("#imgs span:last").after(phtml);
}
},
onSelect : function(file) {
//alert(file.name);
},
//removeCompleted:true,//
requeueErrors:false,
// removeTimeout:2,// , 3
progressData:"percentage",//
onUploadError : function(file,errorCode,errorMsg,errorString,swfuploadifyQueue) { //
// $("#dialog-message").html(errorString);
}
});
});
//
function myUpload(){
$("#img_file").uploadify('upload','*');
}
java 업 로드 된 Action 코드
/**
* Action
* @author wzh
*
*/
@Controller
@Scope("prototype")
public class FileUploadAction extends BaseAction {
private File img_file;
private String img_fileContentType;// "fileName"+ContentType
private String img_fileFileName;// "fileName"+FileName
private String savePath;//
private Map<String, Object> dataMap = new HashMap<String, Object>();
@Override
/***
*
*/
public String execute() throws Exception{
System.out.println("savePath"+getSavePath());
File dir=new File(getSavePath());
System.out.println(dir.getAbsolutePath());
//
if(!dir.exists()){
dir.mkdirs();
}
//
File file=getImg_file();
//
String ext =FileUtil.getExtensionName(getImg_fileFileName());
String newFileName = UUID.randomUUID()+ext;
FileOutputStream fos=new FileOutputStream(getSavePath()+"//"+newFileName);
FileInputStream fis=new FileInputStream(getImg_file());
byte []buffers=new byte[1024];
int len=0;
while((len=fis.read(buffers))!=-1){
fos.write(buffers,0,len);
}
fos.close();
fis.close();
// String uploadFileName = getImg_fileFileName();
dataMap.put("filename",newFileName);
return SUCCESS;
}
<!-- -->
<action name="fileUploadAction" class="fileUploadAction">
<param name="savePath">E:/Tomcat6.0/webapps/uploads</param>
<result type="json">
<param name="root">dataMap</param>
</result>
</action>
이상 의 기본 을 설정 하면 OK 입 니 다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Struts2 Result 매개 변수 상세 정보서버에 제출하는 처리는 일반적으로 두 단계로 나눌 수 있다. Struts2가 지원하는 다양한 유형의 반환 결과는 다음과 같습니다. Chain Result Action 체인 작업 Dispatcher Result Fre...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.