参考:
1.文件路径
2.FileUploadController.java
PropertiesLoader loader = new PropertiesLoader("common.properties");
@RequestMapping("/fileUploadForUeditor.do")
public void editorUpload(HttpServletRequest request, HttpServletResponse response) {
String rootPath = URLDecoder.decode(this.getClass().getResource("/config.json").getPath().replace("/config.json", ""));
response.setHeader("Content-Type" , "text/html");
response.setContentType("text/html;charset=UTF-8");
try {
PrintWriter writer = response.getWriter();
ActionEnter actionEnter = new ActionEnter(request, rootPath);
String returnJson = actionEnter.exec();
logger.info(returnJson);
String actionName = this.getParameter(request, "action");
if ("uploadimage".equals(actionName)) {
returnJson = returnJson.replaceAll("\\.\\.\\/", "").replaceAll("/usr/local/app/upload/images/", "");//去掉所有返回上级;
} else if ("uploadfile".equals(actionName)) {
//{"state": "SUCCESS","title": "1590412588152071934.pdf","original": "zzy_3.pdf","type": ".pdf","url": "/file/producterms/1590412588152071934.pdf","size": "483018"}
ObjectMapper objectMapper = new ObjectMapper();
Map<String, String> map = objectMapper.readValue(returnJson, Map.class);
if ("SUCCESS".equals(map.get("state"))) {
String signKey = loader.getProperty("file.signKey").trim();
logger.info("signKey = " + signKey + "-----");
signKey = EncryptDecryptUtil.encryptData(signKey, 100);
String fileServiceUrl = loader.getProperty("fileUpload.url") + "/fileUpload.do?signKey=" + signKey + "&filePath=producterms";
InputStream is = FileUtils.openInputStream(new File(map.get("url")));
String result = Upload.send(fileServiceUrl, is, map.get("title"));
logger.info("result = " + result);
map.put("url", map.get("title"));
returnJson = objectMapper.writeValueAsString(map);
}
}
writer.print(returnJson);
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
package com.wlb.controller;
import com.wlb.util.EncryptDecryptUtil;
import com.wlb.util.JSONUtil;