@Autowire
- 作用:可以对类成员变量,方法以及构造函数进行标注,让spring完成bean自动装配(spring通过依赖注入创建实例)的工作。
-
@Target({ElementType.CONSTRUCTOR, ElementType.METHOD, ElementType.PARAMETER, ElementType.FIELD, ElementType.ANNOTATION_TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented //java项目www.fhadmin.org public @interface Autowired { /** * Declares whether the annotated dependency is required. * <p>Defaults to {@code true}. */ boolean required() default true; }
使用:
-
//java项目www.fhadmin.org public class ConditionTitleServiceImpl implements IConditionTitleService { //创建类的实例,无需new对象 @Autowired private IDataResourceDao iDataResourceDao; //set方法使用 private People people; @Autowired public void setPeople(People people){ this.people = people; } //构造法方法的使用 private People people; @Autowired public ConditionTitleServiceImpl(People people){ this.people = people; } …… }
@Resource
- 作用:按照名字进行匹配,如果没有找到同名bean,则按照类型进行匹配,最终实现让spring完成bean自动装配(spring通过依赖注入创建实例)的工作。
-
@Target({TYPE, FIELD, METHOD}) @Retention(RUNTIME) @Repeatable(Resources.class) public @interface Resource { …… }
使用
-
//java项目www.fhadmin.org public class ConditionTitleServiceImpl implements IConditionTitleService { @Resource private IConditionTitleDao iConditionTitleDao; …… }