1.后台controller代码
/**
* 文件上传
*/
def importFile = {
try {
def f = request.getFile('uploadFiles')
if(!f.empty){
def fileName=f.getOriginalFilename() //得到文件名称
String fileType = ".jpg";
if(fileName!=null && fileName!=''){
fileType = fileName.substring(fileName.indexOf(".")) //得到文件类型
}
def id = IDFactory.newId() //创建文件ID
def url=Constants.UPLOAD_PATH+id+fileType //文件上传的路径+文件名
def file=new File(url)
if(!file.exists()){
file.mkdirs()//如果file不存在自动创建
}
f.transferTo(file) //上传
def path = id+'|'+fileName+'|'+url
render(path)
}
} catch (Exception e) {
e.printStackTrace()
render("")
}
}
2.前端gsp代码
j.ajaxFileUpload({
type : 'POST',
secureuri : false,
fileElementId:'fragment-2',
url : '${contextPath}/fileUpload/importFile',
success : function(data){
if(data){
createFileList(data);
if(result){
result = result + '#' + data;
}else{
result = data;
}
j("#file1").val('');
alert('文件上传成功!');
}
},
failure : function(data){
alert('文件上传失败!');
}
});
<div id="fragment-2"><input id="file1" type="file" οnchange="addfile(this);" size="65" name="uploadFiles">
</td></div>