文档

§缓存 API 迁移

§新包

现在 cache 已拆分为仅包含 API 的 cacheApi 组件和包含 Ehcache 实现的 ehcache。如果您使用的是默认的 Ehcache 实现,只需在您的 build.sbt 中将 cache 更改为 ehcache

libraryDependencies ++= Seq(
    ehcache
)

如果您正在定义自定义缓存 API 或正在编写缓存实现模块,则只需依赖 API

libraryDependencies ++= Seq(
    cacheApi
)

§已移除的 API

已移除弃用的 Java 类 play.cache.Cache,您现在必须注入 play.cache.SyncCacheApiplay.cache.AsyncCacheApi

§新的同步和异步缓存 API

缓存 API 已重写为具有同步和异步版本。旧的 API 仍然有效,但现在已弃用。

§Java API

接口 play.cache.CacheApi 现在已弃用,应替换为 play.cache.SyncCacheApiplay.cache.AsyncCacheApi

要使用 play.cache.SyncCacheApi,只需注入它

public class SomeController extends Controller {

    private SyncCacheApi cacheApi;

    @Inject
    public SomeController(SyncCacheApi cacheApi) {
        this.cacheApi = cacheApi;
    }
}

然后是 API 的异步版本

public class SomeController extends Controller {

    private AsyncCacheApi cacheApi;

    @Inject
    public SomeController(AsyncCacheApi cacheApi) {
        this.cacheApi = cacheApi;
    }
}

有关如何使用这两个 API 的更多详细信息,请参阅 特定文档

§Scala API

特质 play.api.cache.CacheApi 现在已弃用,应替换为 play.api.cache.SyncCacheApiplay.api.cache.AsyncCacheApi

要使用 play.api.cache.SyncCacheApi,只需注入它

class Application @Inject() (cache: SyncCacheApi) extends Controller {

}

play.api.cache.AsyncCacheApi 的基本相同

class Application @Inject() (cache: AsyncCacheApi) extends Controller {

}

有关如何使用这两个 API 的更多详细信息,请参阅 特定文档

下一步:JPA 迁移


发现文档中的错误?此页面的源代码可以在 此处 找到。阅读完 文档指南 后,请随时贡献拉取请求。有疑问或建议要分享?前往 我们的社区论坛 与社区展开讨论。