@Init 与 @Destroy 用法说明
1、注解说明
注解 | 对应接口 | 执行时机 | 说明 |
---|---|---|---|
@Init | LifecycleBean::start | AppContext::start() | 初始化 |
@Destroy | LifecycleBean::stop | AppContext::stop() | 销毁 |
不支持继承,只支持当前类的函数(一个注解,只允许一个方法)。进一步可以了解:《Bean 生命周期》
2、代码示例
@Component
public class DemoCom {
@Inject
DataService dataService;
@Init
public void start(){ //一个无参的函数,名字随便取
//在 AppContext:start() 时被调用。此时所有bean扫描已完成,订阅注入已完成
dataService.initUser();
dataService.initOrder();
}
@Destroy
public void stop(){
dataService.stop();
}
}
注意,组件里最多只能有一个 @Init
函数,一个 @Destroy
函数。