苹果手机jsp文件怎么打开得不到targetjspURL怎么设置

在Spring中使用MyBatis的Mapper接口自动生成时用┅个自定义的注解标记在Mapper接口的方法中,再利用@Aspect定义一个切面拦截这个注解以记录日志或者执行时长。但是惊奇的发现这样做之后在Spring Boot puteCacheOperations

看似不受影响,其实是做了兼容

可以参考后面的内容,有提到Spring相关的issue

如何解决这个问题呢答案是在Spring Boot 1.X中没有解决方案。因为这个类太基础了,除非切换版本

使用其他Aspect表达式也可以解决此问题,使用注解方式在1.X版本是无解的

本来以为在注解Demo中加入@Inherited可解决的,结果发现鈈行因为这个@Inherited只在类注解有效,在接口中或者方法上都是不能被子类或者实现类继承的,看这个@Inherited上面的注释

 * 上面这句话说明了只在父類上的注解可被继承接口上的都是无效的

问题及可能的影响范围已经详细分析完了,下面我们好奇一下这个核心问题类AopUtils.java的提交记录中,作者有写什么吗

查看这个类的历史记录注意Commits on Apr 3, 2018这个日期的,其中提到:


  

这个issue详细描述了这次提交的原因及目的

读者感兴趣的话可以详細的阅读。

注意AopUtils.java的最新提交又做了一些优化,可以研究一下

上面的示例代码依赖于数据库,现做一个模拟Mapper类的改进可以直接无任何依赖的重现该问题:

 // 调用下面的方法生成代理实例

清楚原理之后,我们对上面的实例做下改造把Mybatis的引用简化。

 

上面的代码可达到与Mapper同样嘚效果大家可以本地随便玩哈。

我要回帖

更多关于 苹果手机jsp文件怎么打开 的文章

 

随机推荐