首次启动应用程序时,是否有任何Spring 3功能可以执行某些方法?我知道我可以做一些技巧来设置带有@Scheduled注释的方法,并且该方法在启动后立即执行,但是随后它将定期执行。
@Scheduled
如果通过“应用程序启动”来表示“应用程序上下文启动”,那么可以,有很多方法可以做到这一点,最简单的方法(无论是对于Singletons Bean还是)@PostConstruct。看一下链接以查看其他选项,但概括来说,它们是:
Singletons Bean
@PostConstruct
用注释的方法 @PostConstruct
afterPropertiesSet()
InitializingBean
从技术上讲,它们是Bean生命周期的钩子,而不是上下文生命周期的钩子,但是在99%的情况下,两者是等效的。
如果你需要专门挂接到上下文启动/关闭中,则可以改为实现Lifecycle接口,但这可能是不必要的。