一、@Component:创建对象的 等同与Spirng配置里的<bean>功能
@Component("myStudent")
public class Student {
/*
* 其中还有3个和@Component功能一致创建对象的3个注解
*
* @Repository : 用在持久层上面也就是dao层
*
* @Service : 用在业务层上面也就是Service层
*
* @Controller : 用在控制器上面也就是Controller
*
* @Controller @Service @Repository用来分层用的
* */
}
二、@Value简单类型赋值
@Component("myStudent")
public class Student {
/*
* 简单类型赋值
* @Value() 使用时放在属性得上面无需Set方法
* */
@Value("张三")
private String name;
@Value("123456")
private String pwd;
}
三,引用类型赋值有两个
1、 @Autowired
@Component("myStudent")
public class Student {
@Value("张三")
private String name;
@Value("123456")
private String pwd;
/*
* 引用类型赋值
*
* @Autowired : 给引用类型赋值使用的是自动注入原理 ,支持byType,byName
* 默认使用byType自动注入
* 使用方式: 1、在属性上面无需Set方法
* 2、在Set方法上面使用
*
*
* 如果要使用byName方式需要在@Autowired下面加个@Qualifier的使用
* @Autowired
* @Qualifier("mySchool")
* private School school;
*
* */
@Autowired
private School school;
}
2、 @Resource
@Component("myStudent")
public class Student {
@Value("张三")
private String name;
@Value("123456")
private String pwd;
/*
* @Resource来自jdk的注解也是使用自动注入的原理支持byName,byType 默认是byName
*
* 使用byName的方式需要加一个name的属性
* name等与bean的id
*
* */
@Resource(name = "mySchool")
private School school;
}
在使用注解的时候得在配置文件中创建一个扫描器
<context:component-scan base-package="包路径"/>