Aop使用中如何避免模板类注入属性为空的常见问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1629个文字,预计阅读时间需要7分钟。
问题起因+在一个需求的时候,发现原有的代码逻辑都是基于模板+泛型的设计模式,模板用于规范逻辑处理流程,泛型用来转换参数和选择实现类。听起来是不是很棒!但是,在使用方法时,要注意不要超出了范围。
问题起因在做一个需求的时候,发现原来的代码逻辑都是基于模板+泛型的设计模式,模板用于规整逻辑处理流程,泛型用来转换参数和选取实现类。听上去是不是很nice!
但是在方法调用的时候却突然爆出一个NPE,直接给人整蒙了!不过懵归懵,该排查的还是需要排查的,下面我使用一个例子来模拟分析我这次的排查的过程。
tips:因为例子我直接就定义在公司的项目当中,所以很多路径打上了马赛克,请勿介意噢!毕竟我们主要还是学习避坑的。ღ( ´・ᴗ・` )比心
- 类目录结构
- AbstractTestAop:顶层抽象类,定义骨架和执行顺序,内部通过Autowired注入了TopClassBean的实例对象。
- AbstractTestCglibAop:二级抽象类,继承自AbstractTestAop,空类无实现。
- TestCglibAopExample:具体子类,类上添加了@Component注解,空类无实现。
- TestAopRemoteEntrance:调用入口,它是一个Bean。
- TopClassBean:实例对象,内部提供一个方法用来表示被调用。
本文共计1629个文字,预计阅读时间需要7分钟。
问题起因+在一个需求的时候,发现原有的代码逻辑都是基于模板+泛型的设计模式,模板用于规范逻辑处理流程,泛型用来转换参数和选择实现类。听起来是不是很棒!但是,在使用方法时,要注意不要超出了范围。
问题起因在做一个需求的时候,发现原来的代码逻辑都是基于模板+泛型的设计模式,模板用于规整逻辑处理流程,泛型用来转换参数和选取实现类。听上去是不是很nice!
但是在方法调用的时候却突然爆出一个NPE,直接给人整蒙了!不过懵归懵,该排查的还是需要排查的,下面我使用一个例子来模拟分析我这次的排查的过程。
tips:因为例子我直接就定义在公司的项目当中,所以很多路径打上了马赛克,请勿介意噢!毕竟我们主要还是学习避坑的。ღ( ´・ᴗ・` )比心
- 类目录结构
- AbstractTestAop:顶层抽象类,定义骨架和执行顺序,内部通过Autowired注入了TopClassBean的实例对象。
- AbstractTestCglibAop:二级抽象类,继承自AbstractTestAop,空类无实现。
- TestCglibAopExample:具体子类,类上添加了@Component注解,空类无实现。
- TestAopRemoteEntrance:调用入口,它是一个Bean。
- TopClassBean:实例对象,内部提供一个方法用来表示被调用。

