§快取 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 移轉
在此文件中發現錯誤?此頁面的原始程式碼可以在 此處 找到。在閱讀 文件指南 後,請隨時提出拉取請求。有問題或建議要分享嗎?請前往 我們的社群論壇,與社群展開討論。