ドキュメント

§キャッシュAPIの移行

§新しいパッケージ

現在、cache はAPIのみを含むcacheApiコンポーネントと、Ehcache実装を含むehcacheに分割されています。デフォルトのEhcache実装を使用している場合は、build.sbtcacheehcacheに変更するだけです。

libraryDependencies ++= Seq(
    ehcache
)

カスタムキャッシュAPIを定義している場合、またはキャッシュ実装モジュールを作成している場合は、APIに依存するだけです。

libraryDependencies ++= Seq(
    cacheApi
)

§削除されたAPI

非推奨のJavaクラスplay.cache.Cacheは削除され、現在はplay.cache.SyncCacheApiまたはplay.cache.AsyncCacheApiを注入する必要があります。

§新しい同期および非同期キャッシュAPI

キャッシュAPIは、同期バージョンと非同期バージョンの2つを持つように書き直されました。古い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の移行


このドキュメントに誤りを見つけましたか?このページのソースコードはこちらにあります。ドキュメントガイドラインを読んだ後、プルリクエストを自由に送ってください。質問やアドバイスを共有したいですか?コミュニティフォーラムにアクセスして、コミュニティとの会話を始めましょう。