100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > angularjs java 文件上传_SpringMvc+Angularjs 实现多文件批量上传

angularjs java 文件上传_SpringMvc+Angularjs 实现多文件批量上传

时间:2023-10-03 15:00:48

相关推荐

angularjs java 文件上传_SpringMvc+Angularjs 实现多文件批量上传

SpringMvc代码

jar包

commons-fileupload

commons-io

spring-mvc.xml配置

Controller

@RequestMapping(value = "api/v1/upload", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)

@ResponseBody

public Map upload (@RequestParam(value = "files") MultipartFile [] files,

@RequestParam(value = "id") String id,

HttpServletRequest request, HttpServletResponse response) {

Map res = new HashMap();

try {

log.info("upload>>>>>id:{}", id);

if (files!=null) {

for (MultipartFile file:files) {

log.info("filename:{}", file.getOriginalFilename());

}

}

} catch (Exception e) {

log.error("upload>>>>异常:{}", e.toString());

}

log.info("upload>>>>返回结果:{}", res);

return res;

}

保存到本地

// copy File

public boolean copyFile (MultipartFile tempFile, String filePath) {

Boolean res = false;

try {

File file = new File(filePath);

if (!file.getParentFile().exists()) {

file.getParentFile().mkdirs();

}

// 将文件拷贝到当前目录下

tempFile.transferTo(file);

res = true;

} catch (Exception e) {

log.info("copyFile>>>>异常:{}", e.toString());

}

return res;

}

AngularJs代码

var app = angular.module('myApp', []);

app.controller('uploadCtrl', ["$scope", "$http", function($scope, $http) {

$scope.submit = function () {

var fd = new FormData();

var files = document.querySelector('input[name="files"]').files;

for (var i=0; i

fd.append("files", files[i]);

}

fd.append("id", $scope.id);

$http({

method:'POST',

url : '/Project/api/v1/upload',

data: fd,

headers: {'Content-Type':undefined},

transformRequest: angular.identity

}).success(function (response) {

console.log(response.data);

}).error(function () {

});

}

}]);

Form表单提交

以上所述是小编给大家介绍的SpringMvc+Angularjs 实现多文件批量上,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。