基本コンセプト
スプリングバージョン3.1定義インタフェースはorg.springframework.cache.Cacheとorg.springframework.cache.CacheManager異なるキャッシング技術を同意する(すなわちJCacheのスプリングは、JSR-107をサポートします)。
キャッシュインターフェース仕様は、アセンブリキャッシュ、各種操作のセットを含むキャッシュとして定義されます。
キャッシュインターフェースは、様々な春xxx.Cacheの実装を提供し;場合:RedisCache、EhCacheCache、ConcurrentMapCache等。
この方法は、ターゲットメソッド春を指定して、キャッシュ関数呼び出しを必要とするたびに、指定されたパラメータがあまりにも呼ばれているかどうかをチェックします。あなたはキャッシュから直接メソッド呼び出しの結果を取得する場合、メソッド呼び出しに戻って結果をキャッシュしない場合ユーザー。次の呼び出しは、キャッシュから直接入手可能です。
PS:私たちは二つのことに集中する必要があると春のキャッシュ抽象化を使用しました。
1.の方法は自分のキャッシュポリシーと同様にキャッシュする必要が決定
キャッシュ前にキャッシュに格納されたデータを読む2.
重要な概念とキャッシングのコメント
コンセプト | 説明 |
---|---|
キャッシュ | キャッシュインターフェース、カスタムキャッシュ操作 |
CacheManager | キャッシュ・マネージャー、CacheManagerのCACHは複数のコンポーネントを管理し、キャッシュコンポーネントでキャッシュへの本当のCRUD操作は、各コンポーネントは、独自のキャッシュのみ1名を持っています。 |
@Cacheable | 構成のための主な方法は、そのキャッシュ要求パラメータ方法の結果に応じて可能です。 |
@CacheEvict | キャッシュを空に |
@CachePut | メソッドが呼び出されることを確認し、私は構造をキャッシュすることにしたいです |
@EnableCaching | オープン注釈ベースのキャッシング |
KeyGenerator | ときにキャッシュデータキー生成戦略 |
シリアライズ | キャッシュデータ値際に直列化戦略 |
プロジェクトを作成します。
ビッグボックス Springboot_Cache-1輸入モジュール:キャッシュ、ウェブは、MySQL、MyBatisの
基本的な環境を設定
部署と従業員テーブルを作成する1.インポート・データベース・ファイル、
javaBeanの作成2.データがカプセル化
MyBatisのデータベース操作の統合3.
1.コンフィギュレーションデータソース情報を
1 |
spring.datasource.url = JDBCます。mysql:// localhostを:3306 / spring_cache useUnicode =真&characterEncoding = UTF-8&useSslオプション=偽&serverTimezone = UTC? |
2. NotesバージョンMyBatisの
パッケージ@MapperScanがスキャンマッパーインタフェースが存在するように指定
ファストキャッシュの経験
ステップ
注釈ベースのキャッシュ@EnableCachingの電源を入れ
2.マークキャッシュのコメント
@Cacheable
@CacheEvict
@CachePut
PS:SQL文は次の文のJavaによるコンソールログに出力することができます
1 |
logging.level.com.zjg.cache.mapper(包的真名) =debug |