一尘不染

Java为什么要使用@PostConstruct?

java

在托管bean中,@PostConstruct是在常规Java对象构造函数之后调用的。

为什么要使用@PostConstructbean初始化而不是常规构造函数本身?


阅读 1482

收藏
2020-03-04

共1个答案

一尘不染

  • 因为在调用构造函数时,bean尚未初始化-即没有注入依赖项。在该@PostConstruct方法中,bean已完全初始化,你可以使用依赖项。

  • 因为这是保证可以在bean生命周期中仅调用一次此方法的协定。可能会发生(尽管不太可能)容器在其内部工作中多次实例化bean,但它保证@PostConstruct仅将其调用一次。

2020-03-04