假如我在mybatis 中自定义一个cache ,然后在getObject 中需要执行一个sqlmap。我按图(红圈处)实现,执行出现问题,如栈信息(死循环了)。我应如何解决,或者 有没有其它什么方式执行呢? 
java.lang.StackOverflowError
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:763)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2944)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1208)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1688)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1569)
org.mybatis.spring.transaction.SpringManagedTransaction.close(SpringManagedTransaction.java:127)
org.apache.ibatis.executor.BaseExecutor.close(BaseExecutor.java:90)
org.apache.ibatis.executor.CachingExecutor.close(CachingExecutor.java:64)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
org.apache.ibatis.plugin.Invocation.proceed(Invocation.java:49)