场景:
需要写 main方法/工具类 测试一个spring注入的对象,这里的注入对象可以是bean、service等等

原理分析:

  1. 首先从java基础说起,任何一个项目,写的main方法 与 项目本身 是两套隔离的东西,故main方法不能与项目共享spring注入
  2. spring注入的根本是容器context去读取bean

========================================================================

知道以上两个原理后,我们一起来实现一下吧~~
1.在 applicationContext.xml 里增加bean的配置
在这里插入图片描述
注意:这里要注意路径哦,是resources下的 applicationContext.xml
在这里插入图片描述
注意:class引用的是impl实现


2.写main方法/工具类,创建容器context-》用context获取bean,即xml中定义的bean
在这里插入图片描述
注意1:
IUspSoIntermediateService uspSoIntermediateService = (IUspSoIntermediateService)applicationContext.getBean(“uspSoIntermediateService”);

返回值必须是service,强转的也必须是service,getBean的(即applicationContext配置的)必须是ImplService
【getBean的和返回值不能是同一级,必须返回值是实现,getBean的是接口】


注意2:
new 容器的时候,需要指定xml的路径,路径默认是从resources开始的,故此处指定绝对路径从spring开始。


3.成功啦!!!
在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐