学习记录之Spring-IOC
ioc控制反转
1. 如何配置bean
a) 显示配置 @bean @Configyration
b) 隐式配置 @Component @Controller @Service @Repositorty
2. 如何获取Spring对象容器(上下文对象,并从中获取对应的Bean对象
a) 获取方式:
i. 根据BeanId获取
1. 直接根据id获取,自己强转
2. 根据id获取,并指定类型,直接获取对应的类型
ii. 根据类型获取
3. Bean的作用域
a) Singleton 单例 默认的作用域
b) Prototype 原型
c) Session
d) Reques
e) 如何修改作用域:@scope(“...”)
4. 依赖注入
a) @Autowried
i. Spring提供的,默认根据类型注入没有匹配类型,注入失败,可以考虑使用属性required=false解决问题(仅当依赖项存在时才会注入);注入方式:构造方法注入,set方法注入,字段注入
ii. 如果有多个类型会产生歧义,我们需要消除歧义,使用@Qualifier指定BeanId没有以上注解,自动根据BeanId注入,
b) @Resource
i. Java提供的,默认根据name注入,若找不到匹配的name,则自动退回到根据类型注入,若该注解使用了属性name,则直接根据name注入,注意:该注入类型不适用于构造注入。
5. Stereotype注解和Meta注解
a) Stereotype注解(组合注解):组件扫描会检查自动就带有@Component注解的那些注解,
b) Meta注解(元注解):可添加在其他注解上的注解。注:组合注解和元注解并没有严格的划分,你既可以是组合注解也可以是元注解。