Play 框架手册(9) – 异步 Jobs

因为 play 是一个 web 应用程序,因此许多应用程序逻辑都是由控制器返回给 http 请求的。

但有些时候,我们需要在 http 请求外执行一些应用逻辑。比如非常有用的初始 化任务,维护任务或运行不能被 http 请求池中断的长时运行的任务等等。

Jobs 可以被框架全面进行管理。意思是 play 负责管理所有的数据库连接原料 stuff,JPA 实体管理器负责管理数据同步和事务管理。要想创建一个 job,只需 要继承 play.jobs.Job 即可。

package jobs;

import play.jobs.*;

public class MyJob extends Job {

    public void doJob() {
        //在这儿执行某些逻辑
    }

}

有些时候需要任务返回结果,这时就需要重载 doJobWithResult()方法。

package jobs;

import play.jobs.*;

public class MyJob extends Job<String> {

    public String doJobWithResult() {
        //在这儿执行某些逻辑
        return result;