春のブートRedisのは、1を使用します
Redisの:
Redisのは完全に無料のオープンソースであり、BSD契約を遵守し、高性能なキーと値のデータベースです。
- Redisのと他のキーと値のキャッシング製品は、次の3つの特徴があります
Redisのサポート永続データを、メモリ内のデータは、ディスクに保存することができますが、再利用することができたときにロードするために再起動します。
また、ストレージ・リスト、セット、ZSET、ハッシュおよび他のデータ構造を提供しながら、Redisのは、簡単なキーと値のデータ型をサポートしています。
Redisのバックアップデータ、すなわち、データのバックアップマスタ・スレーブモードをサポートします。
春ブーツどのように使用するには:
-
pom.xmlを頼るの紹介
<!-- redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
-
コンフィギュレーションの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 -
起動クラスのノートは@EnableCachingを追加、変更
@RestController BR /> @ SpringBootApplication
@MapperScan( "com.example.demo.dao.mybatis")BR /> @ EnableCaching
パブリッククラスDemoApplication -
エンティティクラスは、直列化のサポートを追加します
パブリッククラスユーザーはSerializableを実装します
-
サービスプラスのキャッシュのコメント
@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の簡単な操作完全な説明