1

我希望我的服务器在启动时进行一些数据库清理。我尝试向服务添加 @PostConstruct 方法来执行此操作,但是 @Transactional 在那里不起作用。我所做的任何更改都不会被保留。我怎样才能完成这项工作?我可以创建一个带有特定回调的新 bean 吗?

4

1 回答 1

3

您可以在 @PostConstruct 中调用另一个事务资源来完成这项工作,因为此时完成了注入。因此,DbPopulator可以使用UserService其中的任何内容,@PostConstruct并且所有内容都是事务性的并且再次很好地分开。单例 bean 是在启动 afaik 时构建的,因此不需要额外的设置。

于 2013-04-25T20:28:36.547 回答