一、配置spring上下文
@Component
public class ApplicationContextProvider implements ApplicationContextAware {
private static ApplicationContext context;
private ApplicationContextProvider(){}
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
context = applicationContext;
}
public static <T> T getBean(String name,Class<T> aClass){
return context.getBean(name,aClass);
}
}
二、定义线程类
@Component("myThread")
@Scope("prototype")
public class MyThread extends Thread {
@Override
public void run() {
}
}
三、启动线程类
MyThread m1 = ApplicationContextProvider.getBean("myThread", MyThread.class);
m1.start();