gpt4 book ai didi

java - Spring:init-method、PostConstruct、afterPropertiesSet:何时使用其中一个而不是其他?

转载 作者:IT老高 更新时间:2023-10-28 13:53:42 25 4
gpt4 key购买 nike

spring bean 生命周期中有很多可用的初始化选项。

init-methodPostConstruct注解、afterPropertiesSet、Bean post-initialization甚至类构造函数。所有这些都可以用于初始化一个bean。

我很困惑何时使用这些而不是其他。此外,是否有任何情况下我们可能需要在单个 Bean 中使用所有这些选项?如果是,请举例说明。

真的很期待得到一些很好的答案。

最佳答案

使用构造函数和其他选项的区别在于构造函数代码是最先被执行的,而其他选项只有在依赖注入(inject)到bean之后才会被调用(来自@Autowired 注释或 XML 文件)。

您在构造函数中编写的代码将在 bean 的属性仍未启动时运行。所有 @Autowired 字段都将为 null。有时这是您想要的,但通常您希望代码在设置属性后运行。

除此之外,我看不出有什么不同,除了执行顺序。我不认为你会希望在同一个类中拥有所有选项。

关于java - Spring:init-method、PostConstruct、afterPropertiesSet:何时使用其中一个而不是其他?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25528775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com