【log】上传附件接口aop 日志报错修改

pull/3/head
liuhanqing 2021-01-17 14:01:37 +08:00
parent 64c608e35e
commit fe4222bca8
1 changed files with 20 additions and 5 deletions

View File

@ -21,6 +21,7 @@ import org.springframework.core.DefaultParameterNameDiscoverer;
import org.springframework.core.Ordered; import org.springframework.core.Ordered;
import org.springframework.core.ParameterNameDiscoverer; import org.springframework.core.ParameterNameDiscoverer;
import org.springframework.ui.Model; import org.springframework.ui.Model;
import org.springframework.web.multipart.MultipartFile;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.HashMap; import java.util.HashMap;
@ -173,6 +174,8 @@ public class RequestApiLogRecordAop implements Ordered {
for (int k = 0; k < args.length; k++) { for (int k = 0; k < args.length; k++) {
if (args[k] instanceof Model) { if (args[k] instanceof Model) {
classes[k] = Model.class; classes[k] = Model.class;
} else if (args[k] instanceof MultipartFile) {
classes[k] = MultipartFile.class;
} else { } else {
classes[k] = args[k].getClass(); classes[k] = args[k].getClass();
} }
@ -194,21 +197,33 @@ public class RequestApiLogRecordAop implements Ordered {
// 装载参数名称和参数值 // 装载参数名称和参数值
for (int i = 0; i < parameterNames.length; i++) { for (int i = 0; i < parameterNames.length; i++) {
// 解决上传文件接口aop记录日志报错
if (args[i] instanceof MultipartFile && args[i]!=null) {
// 根据参数名只记录文件名
paramMap.put(parameterNames[i], ((MultipartFile) args[i]).getOriginalFilename());
}else{
paramMap.put(parameterNames[i], args[i]); paramMap.put(parameterNames[i], args[i]);
} }
}
} catch (Exception e) { } catch (Exception e) {
// 打印日志 // 打印日志
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
e.printStackTrace(); e.printStackTrace();
} }
// log.error(e.getMessage()); log.error(e.getMessage());
// 有异常则不显示参数名称直接返回参数 // 有异常则不显示参数名称直接返回参数
for (int i = 0; i < args.length; i++) { for (int i = 0; i < args.length; i++) {
if (args[i] instanceof MultipartFile && args[i]!=null) {
// 根据参数名只记录文件名
paramMap.put("args" + i, ((MultipartFile) args[i]).getOriginalFilename());
}else {
paramMap.put("args" + i, args[i]); paramMap.put("args" + i, args[i]);
} }
}
} }