Thymeleafチュートリアル:第16章テンプレートキャッシュ

目次

16テンプレートキャッシュ


Thymeleafは、マークアップとテキスト用の一連のパーサーのおかげで機能します。これは、パターンを順番に解析します(開始タグ、テキスト、終了タグ、コメントなど)。 そして、一連のプロセッサ (各タイプの動作に1つ)は、イベントのパターン解析シーケンスを適用および変更して、元のパターンとデータを組み合わせることで期待される結果を作成します。

また、デフォルトでは、分析されたパターンが保存されるキャッシュも含まれます。 テンプレートファイルを処理する前に読み取り、分析した結果として発生するイベントのシーケンス。 これは、Webアプリケーションで作業する場合に特に役立ち、次の概念に基づいています。


これはすべて、大量のメモリを失うことなく、Webアプリケーションで最も使用されるテンプレートをキャッシュできるという考えにつながります。また、実際には、決して変わらない。

そして、このキャッシュをどのように制御できますか? 最初に、Resolver Templateでキャッシュを有効または無効にできること、そして特定のテンプレートでのみ動作することができることを学びました:

//   true templateResolver.setCacheable(false); templateResolver.getCacheablePatternSpec().addPattern("/users/*"); 

さらに、デフォルトのデフォルトCacheManager実装のインスタンスである独自のCache Managerオブジェクトをインストールすることにより、構成を変更できます。

 //   200 StandardCacheManager cacheManager = new StandardCacheManager(); cacheManager.setTemplateCacheMaxSize(100); ... templateEngine.setCacheManager(cacheManager); 

javadoc API org.thymeleaf.cacheを参照してください。 キャッシュの設定の詳細については、 StandardCacheManagerを参照してください。

エントリはテンプレートキャッシュから手動で削除できます。

 //    templateEngine.clearTemplateCache(); //      templateEngine.clearTemplateCacheFor("/users/userList"); 

Source: https://habr.com/ru/post/J352544/


All Articles