文件上传
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>
/**
* 返回文件后缀
*
* @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>
相关文章推荐
- 图片预览,格式确认
- CoreText
- R生成颜色PDF
- Swift基础之UIButton
- JAVA-IO之读取媒体文件(图片、音频、视频)
- Android IllegalStateException: Fragment not attached to Activity
- 收集
- Qt之QTemporaryFile
- Android SwipeSelector
- recyclerview 的item被remove后position的错乱问题
- VS工程配置中的一些常用概念
- 用netcat传输文件
- Android SwipeSelector
- Swift基础之UIButton
- Qt之QTemporaryFile
- 学习笔记:主定理
- 一个简单代码的不简单实现
- mina、netty消息边界问题(采用换行符)
- linux命令:rsync, 同步文件和文件夹的命令
- MySQL for Windows 解压缩版配置安装