关于第五步和第八步的疑问

关于第五步和第八步的疑问

问什么要写一个单独的类MyBeanPostProcessor去实现BeanPostProcessor,而不直接用Man去实现BeanPostProcessor?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,这里MyBeanPostProcessor实现了BeanPostProcess,不止是对Man这个bean实例化前后进行的增强,其他的例如userDao等bean也将配合MyBeanPostProcessor进行增强。

例如:userDao实例时执行第五步和第八步,

http://img1.sycdn.imooc.com//climg/5e0f0d9d097057f113190751.jpg

也就是说MyBeanPostProcessor和Man以及UserDao解耦,不存在耦合关系。

至于其他接口写在bean实例中,是因为他们需要存在耦合,例如实现BeanNameAware接口,实现setBeanName()方法,是为了给某个bean实例设置名称。

祝:学习愉快~

好帮手慕阿满 2020-01-03 11:07:23

同学你好,如果存在类实现BeanPostProcess,bean的生命周期第五步将会执行postProcessBeforeInitialization,第八步将执行postProcessAfterInitialization。单独写一个类实现BeanPostProcess,是为了和bean解耦。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 慕沐8221787 #1
    完全不明白,这里本身就是测试bean的生命周期的,为什么还要解耦,那其他的接口都是直接在bean实现的,那又是基于什么考虑?
    2020-01-03 11:57:21
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
SSM主流框架入门与综合项目实战2018版
  • 参与学习           人
  • 提交作业       205    份
  • 解答问题       4317    个

Java中非常实用的SSM整合开发内容,从Spring开始,到MyBaits的进阶内容,再到SpringMVC的应用,最后是SSM整合开发案例,逐步深入,助你成长为一名Java工程师!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师