您的位置:首页 > 其它

文件上传

2016-07-04 15:39 274 查看
java:

/**

* 返回文件后缀

* @param fileName
* @return
* @author leijing
* @date 2016年6月30日 下午21:09:08
*/
public String getSuffix(String fileName) {
int lastIndexOfDot = fileName.lastIndexOf(".");
return lastIndexOfDot != -1 ? fileName.substring(lastIndexOfDot + 1) : "";
}
/**
* 返回文件后缀

* @param request
* @param fileElementId
* @return
* @author leijing
* @date 2016年7月1日 下午14:13:12
*/
public String uploadFile(HttpServletRequest request,String fileElementId){
JSONObject obj = new JSONObject();
String url = "";
String filename = "";
int result = RESULT_SUCCESS;
try{
boolean isMultipart = ServletFileUpload.isMultipartContent(request); 

MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
// 得到上传的文件
MultipartFile mFile = multipartRequest.getFile(fileElementId);

if(!isMultipart || null == mFile){
result = RESULT_ERROR;
obj.put("fileName", filename);
obj.put("url", url);
obj.put("code", result);
return obj.toString();
}

filename = mFile.getOriginalFilename();
InputStream inputStream = mFile.getInputStream();
byte[] b = new byte[1024 *1024* 16];
int length = inputStream.read(b);
String suffix = getSuffix(filename);
MimeType _mime = MimeType.valueOf(suffix.toUpperCase());
String mime = _mime.contentType;
String fileUploadName = new Date().getTime()+ "." + suffix;
url = bs2Service.uploadFile(b, fileUploadName, mime);
}catch(Exception e){
result = RESULT_ERROR;
logger.warn("FileUploadService.uploadFile error:"+e.getMessage());
}
obj.put("fileName", filename);
obj.put("url", url);
obj.put("code", result);

return obj.toString();
}

js:

function uploadFile(file,fileId,fileElementId){
var url = baseDomin+"detect/uploadFile.action?fileElementId="+fileElementId;

var form = $("#"+fileElementId+"_Form");
   
$.ajaxFileUpload({  

        url:url,  

        secureuri:false,  

        fileElementId:fileElementId,//file标签的id  

        dataType: 'content',//返回数据的类型  

        data:form.serialize(),

        enctype:"multipart/form-data",

        success: function (data, status) {  

        console.log(data);

        data = eval("("+data+")");

        if(data.code == 0){

        var fileName = data.fileName;

        var url = data.url;

       

        $("#fileName").val(fileName);

        $("#"+fileId).val(url);

        $("#"+fileId).parents(".preview_img").css("background-image","url("+url+")");

        //$("#"+fileId).append("已经添加");

        }else{

        alert("error:"+data);

        }

        },  

        error: function (data, status, e) {  

            alert(e);  

        }  

    });  

   

}

maven:

<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>cos</artifactId>
<version>26Dec2008</version>
</dependency>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: