1.用于创建对象
@Component 把当前对象存入spring容器
Controller Service Repository
属性:value bean的ID
2.用于注入数据
成员变量值注入
@Autowired 方法和变量上(不需要set方法了)
自动按照类型注入
多个同类型的bean 要注入的变量名称和bean的ID一致
@Qualifier 在给类成员注入不能单独使用,给方法参数注入时可以,这个时候面对参数类型有多个bean,可以指定bean id
@Resource 直接注入 name = bean 的ID 可以单独使用
@Value用于注入String和基本类型数据 value用于指定数据 它可以使用spring的spel:${}
${}出现的位置有spring配置文件,mybaits配置文件,jsp el表达式
3.用于改变作用范围
@Scope prototype
4.和生命周期相关
@PreDestroy
@PostConstruct
--------------------------------------------------------------------------------------------------------------------------------------------------
新注解
@Configuraton 指定当前类是一个配置类 当配置类作为AnnotationConfigApplicationContext 的参数时注解可省略
@ComponentScan 指定spring 创建容器时要扫描的包 属性 basePackages (value)
@Bean 用于把当前方法的返回值作为bean存入spring ioc容器中 属性 name 指定bean的id 默认当前方法的方法名
@Import(jdbcConfig.class) 导入其他的配置类
@PropertySource("classpath:jdbc.properties") 用于指定properties 文件位置
@Value("${jdbc.driver}")
@RunWith(SpringJunit4ClassRunner.class)
@ContextConfiguration 属性location:xml 加上classpath class :配置类位置