本文整理汇总了Java中org.springframework.util.ReflectionUtils.isObjectMethod方法的典型用法代码示例。如果您正苦于以下问题:Java ReflectionUtils.isObjectMethod方法的具体用法?Java ReflectionUtils.isObjectMethod怎么用?Java ReflectionUtils.isObjectMethod使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.springframework.util.ReflectionUtils
的用法示例。
在下文中一共展示了ReflectionUtils.isObjectMethod方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: invoke
import org.springframework.util.ReflectionUtils; //导入方法依赖的package包/类
/**
* 关于这个方法,还发现了一个很神奇的现象。。。
* 当我调试时,偶尔会发现微信会收到消息,消息内容是被代理的对象的toString(),这就奇怪了,从哪里来的呢?
* 而且不调试时没这个问题。。。仔细分析发现,应该就是和调试时调试器会调用对象的toString方法导致的
* 因为调用了代理对象的toString,进入这个拦截器,只要进入这个拦截器,最终就会调用send。因为toString()最终返回string,故会发出那个消息。。。
* 又一次被调试时toString坑了。添加方法过滤解决此问题。
*
* @param invocation
* @return
* @throws Throwable
*/
@Override
public Object invoke(final MethodInvocation invocation) throws Throwable {
if (ReflectionUtils.isObjectMethod(invocation.getMethod())) {
return ReflectionUtils.invokeMethod(invocation.getMethod(), invocation.getThis(), invocation.getArguments());
}
WxRequest wxRequest = WxWebUtils.getWxRequestFromRequest();
wxAsyncMessageTemplate.send(wxRequest, () -> {
try {
return invocation.proceed();
} catch (Throwable e) {
throw new WxApiException(e.getMessage(), e);
}
});
return null;
}
示例2: invoke
import org.springframework.util.ReflectionUtils; //导入方法依赖的package包/类
/**
* 后续加上缓存,一定要加
*
* @param inv
* @return dummy
* @throws Throwable
*/
@Override
public Object invoke(MethodInvocation inv) throws Throwable {
if (ReflectionUtils.isObjectMethod(inv.getMethod())) {
if ("toString".equals(inv.getMethod().getName())) {
return clazz.getName();
}
return ReflectionUtils.invokeMethod(inv.getMethod(), inv.getThis(), inv.getArguments());
}
WxApiMethodInfo wxApiMethodInfo = methodCache.get(inv.getMethod());
if (wxApiMethodInfo == null) {
wxApiMethodInfo = new WxApiMethodInfo(inv.getMethod(), wxApiTypeInfo);
methodCache.put(inv.getMethod(), wxApiMethodInfo);
}
return wxApiExecutor.execute(wxApiMethodInfo, inv.getArguments());
}
示例3: isObjectMethod
import org.springframework.util.ReflectionUtils; //导入方法依赖的package包/类
private static boolean isObjectMethod(Method method) {
return OBJECT_METHOD_NAMES.contains(method.getName()) && ReflectionUtils.isObjectMethod(method);
}