Spring获取Bean的两种方式

文章介绍了在Spring框架中获取Bean的两种方法:一种是通过ApplicationContext接口获取,另一种是使用@Autowired注解进行依赖注入。在测试类中,可以使用@SpringBootTest和@ContextConfiguration注解来设置上下文。
摘要由CSDN通过智能技术生成

两种获取Bean方式
方式1

    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.applicationContext = applicationContext;
    }
    @Test
    public void testApplicationContext() {
        AlphaDao alphaDao = applicationContext.getBean(AlphaDao.class);
        System.out.println(alphaDao.select());
    }

方式2

//    使用Bean,没有必要去通过容器获取,只需要声明给当前容器注入
    @Autowired
    private AlphaDao alphaDao;
    @Test
    public void testDI() {
        System.out.println(alphaDao.select());
    }

完整测试类代码

@SpringBootTest
//保证测试类和正式项目所用配置类保持一致
@ContextConfiguration(classes = CampusCommunityApplication.class)
//哪个类需要spring容器,哪个类就实现接口得到spring容器
class CampusCommunityApplicationTests implements ApplicationContextAware {
    private ApplicationContext applicationContext;
    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.applicationContext = applicationContext;
    }
    @Test
    public void testApplicationContext() {
        AlphaDao alphaDao = applicationContext.getBean(AlphaDao.class);
        System.out.println(alphaDao.select());
    }
//    使用Bean,没有必要去通过容器获取,只需要声明给当前容器注入
    @Autowired
    private AlphaDao alphaDao;
    @Test
    public void testDI() {
        System.out.println(alphaDao.select());
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值