java ajaxfileupload 文件上传

来源:互联网 发布:西安千度网络传销 编辑:程序博客网 时间:2024/06/05 06:11
<script type="text/javascript" src="<%=path%>/resources/lib/ajaxfileupload.js"></script>
<input name="file" id="file" type="file" onchange="upcloadData(this)">


function upcloadData(obj){
var remark = "";
var file = obj.value;
if(file == '' || file == null){
alert("请选择要上传的文件");
return false;
}else{
var FileName = new String(file);
var extension=new String (FileName.substring(FileName.lastIndexOf(".")+1,FileName.length));//文件扩展名
var FileNameonly=new String (FileName.substring(0,FileName.lastIndexOf(".")));//文件扩展名
if(FileNameonly.indexOf(".") != -1 || !(extension == 'xls' || extension == 'xlsx')){
 alert("上传的文件类型异常,请重新上传文件。!");
 return false;

//导入数据的时候把现在前台页面拼接起来
//先得到相应的数据,得到导入的数据
$.ajaxFileUpload({
url:'<%=path%>/financeController/uploadExceptionData.action',
type:'POST',
data:{},
dataType:'text',
fileElementId:'file',
secureuri:false,
success:function(msg){
msg = eval("("+msg+")");
if(msg != undefined && msg != null && msg != ''){
alert(msg.result);
}
},error: function (data, status, e){
alert(e);
}
});
}
}




@RequestMapping(value = "uploadExceptionData")
@ResponseBody
public String uploadExceptionData(HttpServletRequest request,String billinfoId){
//创建一个jsonobject存放返回的数据
JSONObject object = new JSONObject();
//获取当前登录的用户
UserInfo loginInfo = (UserInfo) request.getSession().getAttribute("userInfo");
//判断是否获取了以后信息
if(loginInfo == null){
object.put("result", "获取不了登录用户");
}
try {
//使用spring
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;  
MultipartFile file = multipartRequest.getFile("file");  
String ext = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
if(file != null && file.getSize() > 0 && ext != null && !"".equals(ext)){
//获取导入的数据流:file.getInputStream()
}
 
} catch (Exception e) {
e.printStackTrace();
object.put("result", "导入异常");
}
return object.toString();
}