Spring Data Redis框架底层源码解析
Redis
**redis是由Salvatore Sanfilippo用C语言编写的一个缓存系统,
与memcached相比,提供了更多的处理复杂数据结构的方法;
性能也非常的突出。**
Spring Data Redis
SpringDataRedis是spring大家族中的一部分,提供了在spring应用中通过简单
的配置访问redis服务,对redis底层开发包(Jedis,JRedis,andRJC)进行了高度封装,
RedisTemplate提供了redis各种操作,异常处理及序列化,支持发布订阅,
并对Spring3.1cache进行了实现.
下图是spring data redis class diagram
然后我们结合以下配置类来进行详解:
@Configuration
@PropertySource(value = {
"classpath:redis-config. properties" })
public class RedisConfig {
/**
* 连接池配置信息
* @return
*/
@Bean
@ConfigurationProperties(prefix = "spring.redis.pool")
public JedisPoolConfig jedisPoolConfig() {
JedisPoolConfig config = new JedisPoolConfig();
return config;
}
/**
* 2.创建RedisConnectionFactory:配置redis 链接信息
*/
@Bean
@ConfigurationProperties(prefix = "spring.redis")
public RedisConnectionFactory redisConnectionFactory(JedisPoolConfig config) {
RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration();
JedisClientConfiguration.