前面讲到的内容是经过配置类去扫描包路径或者本身导入的类或者配置文件其余修饰对象扫描类,并不是本身手动注入一个Bean,而后获取Beanjava
public class DirectMain { public static void main(String[] args) { AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(); ac.register(DirectUserAA.class); ac.registerBean("directUserBB",DirectUserBB.class); ac.refresh(); DirectUserAA useraa = (DirectUserAA)ac.getBean(DirectUserAA.class); System.out.println(useraa); DirectUserBB userbb = (DirectUserBB)ac.getBean(DirectUserBB.class); System.out.println(userbb); } }
这种方式你们固然不会用到,由于一个项目中一般会有几百上千个类,Spring这样的框架不可能只提供一个一个去注册,那就不会有人用它了(不过Spring最开始基于XML的时候还真的是一个一个Bean去注册-还有Spring在JDK1.5发现了注解,开始作基于注解的框架),就算要手动注册Bean应该是在后面讲解的时候经过BeanFactoryPostProcessor注册。框架
给本身布置一个做业:等整个初始化流程梳理完了,再补充一个帖子是Spring提供的全部可注入或者修改Bean的实现方式code