小编don*_*ong的帖子

springboot @PostConstruct方法被调用两次

我注意到我的bean 在jar的spring-boot应用程序上一次调用了@PostConstructinit()并且@Scheduled两次。这是初始化两次的示例bean。

@Component
@ConfigurationProperties(prefix = "task")
public class CancelTask {
    private static Logger log = LoggerFactory.getLogger(CancelTask.class);

    @PostConstruct
    public void init() {
        log.info("CancelTask init:{}", this);
        printStackTrace();
    }

    private void printStackTrace() {
        StackTraceElement[] stackElements = new Throwable().getStackTrace();
        StringBuilder sb = new StringBuilder();
        if (stackElements != null) {
            for (int i = 0; i < stackElements.length; i++) {
                sb.append("" + stackElements[i] + "\n");
            }
        }
        log.info(sb.toString());
    }

    @Scheduled(cron = "0 */1 * * * ?")
    public void …
Run Code Online (Sandbox Code Playgroud)

spring-boot

4
推荐指数
1
解决办法
1496
查看次数

标签 统计

spring-boot ×1