§缓存 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.SyncCacheApi
或 play.cache.AsyncCacheApi
。
§新的同步和异步缓存 API
缓存 API 已重写为具有同步和异步版本。旧的 API 仍然有效,但现在已弃用。
§Java API
接口 play.cache.CacheApi
现在已弃用,应替换为 play.cache.SyncCacheApi
或 play.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.SyncCacheApi
或 play.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 迁移
发现文档中的错误?此页面的源代码可以在 此处 找到。阅读完 文档指南 后,请随时贡献拉取请求。有疑问或建议要分享?前往 我们的社区论坛 与社区展开讨论。