@Before("apiItf()")
public void before(JoinPoint joinPoint) throws Exception {
Object[] args = joinPoint.getArgs();
if (args != null) {
Method proxyMethod = ((MethodSignature) joinPoint.getSignature()).getMethod();
ApiOperation apiOperation = proxyMethod.getAnnotation(ApiOperation.class);
log.info("[" + apiOperation.value() + "] Request {}", JacksonUtils.jsonObjectSerializer(joinPoint.getArgs())); Object[] object = joinPoint.getArgs();
Object request = object[0];
Field[] fields = request.getClass().getDeclaredFields();
for (Field field : fields) {
String name = field.getName();
name = name.substring(0, 1).toUpperCase() + name.substring(1);
if (field.getGenericType().getTypeName().equals("java.lang.String")) {
Method getField = request.getClass().getMethod("get" + name);
Method setFiled = request.getClass().getMethod("set" + name, new Class[]{String.class});
String value = (String) getField.invoke(request);
if (!Strings.isNullOrEmpty(value)) {
setFiled.invoke(request, new Object[]{value.trim()});
}
}
}
}
}