Redisのを使って春のブートキャッシュ

春のブートRedisのは、1を使用します

Redisの:
Redisのは完全に無料のオープンソースであり、BSD契約を遵守し、高性能なキーと値のデータベースです。
- Redisのと他のキーと値のキャッシング製品は、次の3つの特徴があります
Redisのサポート永続データを、メモリ内のデータは、ディスクに保存することができますが、再利用することができたときにロードするために再起動します。
また、ストレージ・リスト、セット、ZSET、ハッシュおよび他のデータ構造を提供しながら、Redisのは、簡単なキーと値のデータ型をサポートしています。
Redisのバックアップデータ、すなわち、データのバックアップマスタ・スレーブモードをサポートします。

春ブーツどのように使用するには:

  1. pom.xmlを頼るの紹介

    <!-- redis -->
    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
  2. コンフィギュレーションのRedis

    #redis構成は、
    サーバーのアドレス#Redis
    spring.redis.host = 192.168.5.10
    #Redisサーバポート
    spring.redis.port = 6379
    #Redisインデックスデータベース(デフォルト0)
    spring.redis.databaseを。4 =
    #接続プールの最大接続数を(負の値は制限なし)
    spring.redis.jedis.pool.maxアクティブ= 50
    (負の値制限なし)をブロック#待ち時間接続プールの最大
    spring.redis.jedis.pool.max =待機-3000
    #最大アイドル接続プール接続
    spring.redis.jedis.pool.max-IDLE 20は=である
    #最小接続プールのアイドル接続
    spring.redis.jedis.pool.min-IDLE = 2
    #接続時間(ミリ秒)
    春。 redis.timeout = 5000

  3. 起動クラスのノートは@EnableCachingを追加、変更

    @RestController BR /> @ SpringBootApplication
    @MapperScan( "com.example.demo.dao.mybatis")
    BR /> @ EnableCaching
    パブリッククラスDemoApplication

  4. エンティティクラスは、直列化のサポートを追加します

    パブリッククラスユーザーはSerializableを実装します

  5. サービスプラスのキャッシュのコメント

    @Service
    public class MybatisUserService {
    
            @Autowired
            UserMapper userDao;
    
            public int add(User user){
                return   userDao.add(user);
            }
    
            public int update(User user){
                    return   userDao.update(user);
            }
    
            @Cacheable(value = "user-key")
            public User getById(long id){
                    System.out.println("从数据库获取数据");
                    return   userDao.findUserById(id);
            }
    }

---------------- ------------自動的にキャッシュの最後に追加
手動キャッシュ:

@Component
public class RedisUtil {

        @Autowired
        private RedisTemplate<String, String> redisTemplate;

        /**
         * 读取缓存
         *
         * @param key
         * @return
         */
        public String get(final String key) {
                return redisTemplate.opsForValue().get(key);
        }

        /**
         * 写入缓存
         */
        public boolean set(final String key, String value) {
                boolean result = false;
                try {
                        redisTemplate.opsForValue().set(key, value);
                        result = true;
                } catch (Exception e) {
                        e.printStackTrace();
                }
                return result;
        }

        /**
         * 更新缓存
         */
        public boolean getAndSet(final String key, String value) {
                boolean result = false;
                try {
                        redisTemplate.opsForValue().getAndSet(key, value);
                        result = true;
                } catch (Exception e) {
                        e.printStackTrace();
                }
                return result;
        }

        /**
         * 删除缓存
         */
        public boolean delete(final String key) {
                boolean result = false;
                try {
                        redisTemplate.delete(key);
                        result = true;
                } catch (Exception e) {
                        e.printStackTrace();
                }
                return result;
        }
}

Redisの簡単な操作完全な説明

おすすめ

転載: blog.51cto.com/5013162/2404306