spring 注入

spring注入在xml上配置一般资料有很多,学习annotation注解替代xml进行bean注入,annotation的目的不是取代xml,就像spring不是取代哪一个框架一样

 

spring注入失败原因:

1.很多原因网上都能百度到

2.在类中通过@Autowrite注入,当前类没有在spring容器中管理(可能大家都很少遇到这个问题,自己记录下或者有初学者也会遇到该情况)

 从上图可以看出,getbean是可以拿到对象的,说明spring容器已经注册并管理该类,而通过@Autowrite注入的却是null

通过注解完成spring注入

1.使用@Configuration@ComponentScan注解一个配置管理类,被@Configuration注解的类相当于xml文件的beans,在类中定义@Bean,相当于xml里定义的<bean 标签

2.@ComponentScan注解指定spring容器初始化时扫描的类包,basePackages参数指定包,basePackageClasses参数指定类

3.AutowiredAnnotationBeanPostProcessor注解需要在配置管理类中以@bean注解注释,因为xml中要想自动注入需要通过指定该类进行识别?(具体也不太清楚,反正xml中的配置搬过来,O(∩_∩)O哈哈~)

4.其余使用@Autowrite注入即可,在测试类中使用

ApplicationContext context = new AnnotationConfigApplicationContext(ConfigurationDB.class);进行spring容器的初始化,如果有多个配置类也可以像xml那样进行

 

下面贴下我的代码

配置管理类:

模拟应用类:

测试类:

 

posted @ 2018-08-16 23:37  蓝如梦  阅读(190)  评论(0编辑  收藏  举报