一.Ajaxfileupload上传文件
首先页面jsp代码:需要引入jquery和ajaxfileupload.js
<head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <script type="text/javascript" src="js/jquery-3.2.1.min.js"></script> <script type="text/javascript" src="js/ ajaxfileupload.js "></script> </head> <body> <input id="firstfile" type="file" name="firstfile"> <button onclick="upload()">上传</button>
<br />
<script type="text/javascript"> function upload() { $.ajaxFileUpload ({ url: 'http://localhost:8080/AjaxUpload/Upload/ToUploadFile', //用于文件上传的服务器端请求地址 type:'post', secureuri: false, //是否需要安全协议,一般设置为false fileElementId: "firstfile", //文件上传域的ID data:{ "userId": 1 },//一同上传的数据 dataType: 'json', //返回值类型一般设置为json success: function (data, status) //服务器成功响应处理函数 { if(data>0){ alert("上传成功");
}else{ alert("上传失败");
} }
}) } </script> </body> |
服务端接收文件(本例使用springmvc接收):
@Controller @RequestMapping("/Upload") publicclass Upload {
@RequestMapping(value = "/ToUploadFile", method = { RequestMethod.POST }) public@ResponseBody Integer ToUploadFile(@RequestParam("firstfile") MultipartFile firstfile, HttpServletRequest request, HttpServletResponse response) {
try { request.setCharacterEncoding("utf-8"); } catch (UnsupportedEncodingException e1) { e1.printStackTrace(); } response.setContentType("text/html;charset=utf-8"); response.addHeader("Access-Control-Allow-Origin", "*"); response.addHeader("Access-Control-Allow-Methods", "GET,POST");
// ------------------------------------------------------------------------------------------------------------
String originalFilename = null; try {
if (firstfile.isEmpty()) { return 0; |