Bean的配置项
- Id:整个IOC容器中的唯一标识
- Class:具体要实例化的哪一个类
- Scope:指范围,即作用域
- Constructor arguments:构造器的参数
- Properties:属性
- Autowiring mode:自动装配模式
- lazy-inittialzation mode:懒加载模式
- Initialization/destruction method:初始化和销毁的方法
Bean的作用域
- singleton:单例,指一个Bean容器中只存在一份
- prototype:每次请求(每次使用)创建新的实例,destory方式不生效
- request:每次HTTP请求创建一个实例且仅在当前request内有效
- session:同上,每次HTTP请求创建,当前session内有效
- global session:基于portlet的web中有效(定义了global session),如果是在web中,同session
Bean的生命周期
生命周期
- 定义
- 初始化
⇓
- 使用
- 销毁
⇓
Bean的定义及作用域的注解实现
@Component是一个通用的注解,可用于任何bean
@Repository,@Service,@Controller更有针对性的注解
- @Repository通常用于注解DAO类,即持久层
- @Service通常用于注解Service类,即服务层
- @Controller通常用于Controller类,即控制层(MVC)