quartz如何獲取spring註解注入的bean
阿新 • • 發佈:2019-02-15
其實很簡單,如下:
public class ExampleJob extends QuartzJobBean {
@Override
protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
WebApplicationContext a = ContextLoader.getCurrentWebApplicationContext();
System.out.println(a.getBean(APIController. class));
System.out.println(a.containsBean("APIController"));
}
}
通過ContextLoader類的**getCurrentWebApplicationContext()**方法獲取spring的WebApplicationContext,然後再通過相應獲取Bean的方法獲取Bean。上述方法是個通用方法,不只可以用在Quartz中,其他非spring管理類也可以通過這種方法來獲取。