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