Java 使用Jersey创建计划的后台任务

Java 使用Jersey创建计划的后台任务,java,servlets,jersey,jersey-2.0,java-ee-6,Java,Servlets,Jersey,Jersey 2.0,Java Ee 6,我有一个使用Jersey的RESTfulWeb服务,我需要创建一个后台任务来执行一些操作(调用DB等)。 我找到了一些使用ServletContextListener的示例,它很有效 public class Scheduler implements ServletContextListener { private ScheduledExecutorService scheduler; @Inject private MyDBService service; //doesn't work

我有一个使用Jersey的RESTfulWeb服务,我需要创建一个后台任务来执行一些操作(调用DB等)。 我找到了一些使用ServletContextListener的示例,它很有效

public class Scheduler implements ServletContextListener {

private ScheduledExecutorService scheduler;

@Inject
private MyDBService service; //doesn't work

@Override
public void contextInitialized(ServletContextEvent event) {
    scheduler = Executors.newSingleThreadScheduledExecutor();
    scheduler.scheduleAtFixedRate(new Runnable() {
        @Override
        public void run() {
        //want to use service here
        }
    }, 0, 5, TimeUnit.SECONDS);
}

@Override
public void contextDestroyed(ServletContextEvent event) {
    scheduler.shutdownNow();
}}
但我还需要在这里@injection一些服务,看起来这里不起作用。 我还发现了一些EJB示例,但我不能在这里使用它