代码手动注册bean到spring容器

从bean到beandefinition的过程代码实现方式

第一种方式:通过注解bean定义读取器注册类到spring容器中,代码示例如下:

AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext();
AnnotatedBeanDefinitionReader annotatedBeanDefinitionReader = new AnnotatedBeanDefinitionReader(applicationContext);
annotatedBeanDefinitionReader.register(Person.class);
applicationContext.refresh();
System.out.println(applicationContext.getBean("person"));

调试代码在context的beanFactory的beanDefinitionMap中可以看到person bean。

第二种方式通过classpathbeandifinitionScanner扫描

AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext();
ClassPathBeanDefinitionScanner classPathBeanDefinitionScanner = new ClassPathBeanDefinitionScanner(applicationContext);
classPathBeanDefinitionScanner.scan("com/example/mybatistest");
applicationContext.refresh();
System.out.println(applicationContext.getBean("person"));

发表评论

邮箱地址不会被公开。 必填项已用*标注