本文共 822 字,大约阅读时间需要 2 分钟。
@Scope()注解描述了Bean的作用域,常用有singleton(单例);prototype(每次获取都是新实例,但spring不会管理该类,并且不负责消毁该类的实例)
singleton:单例,默认值,内存中只有一个bean实例,创建容器时就会自动创建,无论是否使用
prototype:原型,每次调用都会生成一个新的bean,只有获取Bean时才会创建Bean实例
request:每次发送HTTP请求时都会生成一个新的实例,该作用域仅适用于WebApplicationContext
session:同一个Http Session共享一个Bean,不同的Session使用不同的Bean
golbal session:一般用于Portlet中,仅适用于WebApplicationContext中
@Lazy用于描述此类支持延迟加载,通常配合单例使用
@PostConstruct 注解描述了bean对象在构造方法执行完成后要方法
@PreDestroy注解用于描述Bean对象被销毁前执行的方法
@Component @Scope("singleton") @Lazy public class DefaultCache { public DefaultCache() { System.out.println("cache()"); } @PostConstruct public void init() { System.out.println("init()"); } @PreDestroy public void destory() { System.out.println("destory"); } }
转载地址:http://rfmmi.baihongyu.com/