标签用于创建对象, 常用属性概述:
1.class
用于定位类, 写的是类型的全限定路径.
2.id
用于给的对象做唯一标识. 命名规则一般是字母, 数字, 下划线.
3.factory-bean
用于指定创建目标对象使用的工厂对象.
4.factory-method
用于指定调用工厂中的哪个方法去创建目标对象
5.name
给对象定义别名(小名, 昵称). 可以出现一些特殊符号(不建议使用$, #), 例如/.多个别名可以通过逗号, 分号, 空格进行分隔.
6.init-method
初始化时自动调用的方法. 对象创建后, getBean之前, 会被spring调用一次.
7.destroy-method
销毁时自动调用的方法. 对象被销毁前, 由spring自动调用.
8.parent
标签之间可以有继承关系. 可以简化属性的赋值操作.
9.abstract
抽象的. 使用abstract修饰的, 不能被getBean获取, 只能被其他继承.
10.lazy-init
懒加载(延迟加载). 默认情况下, 容器被加载时, 对象就被创建. 使用lazy-init修饰的, 容器创建时不会创建该对象, 当第一次调用getBean的时候再去创建对象.
11.scope
表示对象的作用范围及创建次数, 可选值有多个:
- singleton, 默认值. 单例
- prototype, 原型. 多例, 表示容器加载时不创建对象, 每次getBean都会创建一个新的对象.
- request, 同一次请求中, 对象单例
- session, 同一个会话中, 对象单例
- application, 在应用上下文中, 对象单例
- global session, 在portlet环境下的全局会话中对象单例
- websocket