init方法重复执行了吗?

来源:3-21 定时任务通用组件封装-5

Panda_io

2021-02-14 16:48:49

老师您定义BeanDefinition的时候设置了init方法

//  创建一个Spring的beanDefinition
BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(SpringJobScheduler.class);
factory.setInitMethodName("init");
factory.setScope("prototype");


但是您注册了以后从容器获取这个bean的时候又调用了该bean的init方法请问是否重复了?

​SpringJobScheduler scheduler = (SpringJobScheduler)applicationContext.getBean(registerBeanName);
scheduler.init();
log.info("启动elastic-job作业: " + jobName);


写回答

1回答

阿神

2021-02-14

是可以去掉后面的,不需要init了,getbean方法也可以初始化的

0

Java架构师-技术专家

千万级电商项目从0到100全过程,覆盖Java程序员不同成长阶段的核心问题与解决方案

2672 学习 · 5839 问题

查看课程