Spring支持使用@Autowired、
@Resource
、@Inject
三个注解进行依赖注入。
@Component(“id”) id可选,告诉spring这是一个组件,交由spring管理, 相当于xml当中的<bean>配置。
@Autowired 默认按类型进行装配(该注解由spring提供,org.springframework.beans.factory.annotation.Autowired
),默认情况下要求依赖对象必须存在,如果不存在会抛出异常,要想允许依赖对象为null值,可以设置required属性为false,@Autowired(required=false),如果使用名称装配,可以结合使用@Qualifier,@Autowired@Qualifier(“name”)。
@Resource(该注解由J2EE提供),默认按照名称进行装配,名称可以通过name属性进行指定,如果未指定name属性,当注解写在字段上时,默认取字段名查找,当找不到名称匹配的bean时,才按照类型进行装配。但是如果name属性一旦指定,将只会按照名称进行装配。
public interface Svc {void sayHello();
}@Service
public class SvcA implements Svc {@Overridepublic void sayHe