ajax上传文件及参数后台获取

ajax上传文件及参数后台获取ajax上传文件及参数前后台使用formData和input文件类型HTML<labelclass=”w160fl”style=’width:150px;’><em>*</em>文件上传:</label><inputtype=”text”name=”uploadFile”class=”gy-inpw250″read…

ajax上传文件及参数前后台

使用formData和input文件类型

HTML

<label class="w160 fl"  style='width: 150px;'><em>*</em>文件上传:</label> 
<input type="text" name="uploadFile" class="gy-inp w250" readonly="readonly" filePath=""></input>
<a href="javascript:void(0);"class="blueBtn" style="position:relative">浏览
<input multiple="multiple" type="file" id="file" name="file" class="file" accept = "txt/*"/></a>

js和ajax代码

var formData = new FormData();
		formData.append("file",temp.currSelector.find(":file")[0].files[0]);
		formData.append("params",params);
		//AGENCY_INFO_ADD_BATCH
		$.ajax({ 
   
			url:"url",
            type:"post",//post请求方式
            data:formData,//参数
            cache: false,
            processData: false,
            contentType: false,
            dataType : "json",
            success:function (data) { 
   
            	if( "0" == data.resultCode ){ 
   
            		layer.alert("上传成功");
            		temp.orderUploadInfo = data.resultObject;
            	}else{ 
   
            		layer.alert(data.resultMsg);
            	}
            },error:function () { 
   
            	  layer.alert(data.resultMsg);
            }
        })

java接收文件与参数

	@ResponseBody
	@RequestMapping(value = "infoAddBatch", method = { 
    RequestMethod.POST })
	public Map<String, Object> agencyInfoAddBatch(MultipartFile[] file, String params,HttpSession session) throws IOException { 
   
		Date date = new Date(); //获取当前的系统时间。
		SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd") ; //使用了默认的格式创建了一个日期格式化对象。
		String time = dateFormat.format(date); //可以把日期转换转指定格式的字符串
		// 获取web容器的文件路径
		Map<String, Object> returnMap = new HashMap<String, Object>();
		MultipartFile files = file[0];
		// 获取文件名
		String filename = files.getOriginalFilename();
		// 定义存储信息的list和map
		ArrayList<Map<String, Object>> listArr = new ArrayList<Map<String, Object>>();
		// 获取文件输入流
		InputStreamReader reader = new InputStreamReader(files.getInputStream());
		BufferedReader br = new BufferedReader(reader);
		String line = "";
		// 按行级遍历处理文件
		line = br.readLine();
		int countLine = 1;
		int flag = 0;
		String resultMsg = "";
		while (line != null) { 
   
			Map<String, Object> reqObj = new HashMap<String, Object>();
			String[] strArr = line.split("\t");
			listArr.add(reqObj);

			// 再读取一行数据
			line = br.readLine();
			countLine++;
		}
		return returnMap;
	}

其中params的类型可以是其他类型,但是对应的controller的方法中的参数类型要保持一致,推荐使用map类型

今天的文章ajax上传文件及参数后台获取分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/10169.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注