通过set方式注入的bean为null_Spring Bean的注入有简单的方式吗?

9c7666a7c1c63ccccca1825f8f4b8d64.png

通过配置的方式注入,往往太麻烦,实际工作中一般不会采取麻烦的方式,因为时间就是金钱,时间决定你是否加班,那是否有更简单的方式去注入呢?当然有!

Spring 注入 bean 的方式

  • 注解注入

案例实操

注解方式注入

对于bean的注入,除了使用xml配置以外,注解的配置简化开发的速度,使程序看上去更加简洁。对于注解的解释,spring对于注解有专门的解释器,对定义的注解进行解析,实现对应bean对象的注入,反射技术实现。

​ 1.加入spring-aop jar包spring-aop-4.3.2.RELEASE.jar

​ 2.Xml配置:加入context命名空间和xsd地址

​ 3.添加配置

<?xml version="1.0" encoding="UTF-8"?>

对于bean的注入常用注解类型

@Autowired属性字段或set方法上

@Resource属性字段或set方法上

区别:@Autowired默认按bean的类型匹配可以修改按名称匹配和@Qualifier配合使用@Resource默认按名称进行装配,名称可以通过name属性进行指定,如果没有指定name属性,当注解写在字段上时,默认取字段名进行匹配注入,如果注解写在setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配。

推荐使用@Resource注解是属于J2EE的,减少了与spring的耦合。

扩展

9d42f2eeb45f6873a6658d28745dc253.gif

IoC集合类型属性注入

list集合注入

<bean 

set集合注入

<bean 

map类型属性注入

<bean 

properties属性注入

<bean