-----------------------------------------------jsp文件上传---------------------------------------------------
function uploadfile(e) {
var layerIndex = '';
var limit = 10 * 1024; // 10M
var url="";
console.log("e.target.files",e.target.files);
var formData = new FormData();
var targetLen = e.target.files.length;
formData.append("id", upcompanyId);
for (var i = 0; i < targetLen; i++) {
var fileData = e.target.files[i];
var filename = fileData.name;
formData.append(filename, fileData);
}
layerIndex = layer.load(1, {shade: [0.1, '#000']});
$.ajax({
url:'${ctx}/admin/company/upload.action',
data: formData,
type: 'POST',
dataType : 'JSON',
processData: false,
contentType: false,
}).then(function (res) {
console.log("res",res);
if (res.status === 1) {
layer.close(layerIndex); //完成加载后关闭loading
layer.msg('上传成功');
setTimeout(function () {
window.location.reload();
}, 1000)
} else {
layer.close(layerIndex); //完成加载后关闭loading
}
})
}
---------------------------------------------------java controller----------------------------------------------------------- @RequestMapping(value = "/upload", produces = "text/html;charset=UTF-8")
public @ResponseBody
String upload(MultipartHttpServletRequest request,
String relationtype, String ch, String token, String iskdr, String filetype,
HttpServletResponse response) {
BaseResult item = new BaseResult();
response.addHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
try {
Integer irelationtype = StringUtilsEX.ToIntNull(relationtype);
if (irelationtype == null) {
item.setDesc("参数类型不正确!");
item.setCode(-100);
return getrsl(item, iskdr);
}
boolean bol = false;
RelationTypeEnum[] relationTypeEnums = RelationTypeEnum.values();
for (RelationTypeEnum iTypeEnum : relationTypeEnums) {
if (iTypeEnum.getValue().equals(irelationtype)) {
bol = true;
break;
}
}
if (!bol) {
item.setDesc("参数类型不正确!");
item.setCode(-100);
return getrsl(item, iskdr);
}
RelationTypeEnum sEnum = relationTypeEnums[irelationtype];
List<String> rpaths = new ArrayList<>();
// 获取多个file
for (Iterator<String> it = request.getFileNames(); it.hasNext(); ) {
String key = it.next();
MultipartFile imgFile = request.getFile(key);
String fileName = imgFile.getOriginalFilename();
int Index = fileName.lastIndexOf(".");
String ext = fileName.substring(Index + 1, fileName.length());
String exts = ConfigUtil.get_instances().getuploadext();
if (!exts.toLowerCase().contains(ext.toLowerCase())) {
item.setDesc("上传文件类型不正确,只请允许上文件类型:" + exts + "!");
item.setCode(-101);
return getrsl(item, iskdr);
}
String newFileName = DateUtil.formatDate(new Date(), "yyyyMMddHHmmssms") + "." + ext;
String uploadpath = ConfigUtil.get_instances().getuploadpath();
String path = request.getSession().getServletContext().getRealPath(uploadpath); // 文件存储位置
String fileAdd = DateUtil.formatDate(new Date(), "yyyyMMdd");
path = path + fileAdd;
String msg = uploadpath + fileAdd + "/" + newFileName;// 返回存储路径
File file1 = new File(path);
if (!file1.exists() && !file1.isDirectory()) {
file1.mkdirs();
}
File file = new File(path, newFileName);
imgFile.transferTo(file);
rpaths.add(msg);
}
item.setData(rpaths);
} catch (Exception e) {
item.setCode(-900);
if (DebugConfig.BLUETOOTH_DEBUG) {
item.setDesc(e.toString());
} else {
item.setDesc("系统错误!");
}
LogHandle.error(LogType.Other,
MessageFormat.format("上传图片错误:{0}", e.toString()),
"image/upload");
}
return getrsl(item, iskdr);
}