bgey 发表于 2017-12-20 16:44:48

spring boot整合redis

package com.test.spring.config;  

  

import org.springframework.beans.factory.annotation.Autowired;  

import org.springframework.context.annotation.Bean;  

import org.springframework.context.annotation.Configuration;  

import org.springframework.data.redis.connection.RedisConnectionFactory;  

import org.springframework.data.redis.core.*;  

import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;  

import org.springframework.data.redis.serializer.StringRedisSerializer;  

  

/**  * Created by Administrator on 2017/3/1 14:45.
*/  
@Configuration
  

public>/**  * 注入 RedisConnectionFactory
*/  @Autowired
  RedisConnectionFactory redisConnectionFactory;
  

/**  * 实例化 RedisTemplate 对象
  *
  *
@return  */
  @Bean
public RedisTemplate<String, Object> functionDomainRedisTemplate() {  RedisTemplate
<String, Object> redisTemplate = new RedisTemplate<>();  initDomainRedisTemplate(redisTemplate, redisConnectionFactory);
return redisTemplate;  }
  

/**  * 设置数据存入 redis 的序列化方式
  *
  *
@param redisTemplate  *
@param factory*/  private void initDomainRedisTemplate(RedisTemplate<String, Object> redisTemplate, RedisConnectionFactory factory) {
  redisTemplate.setKeySerializer(new StringRedisSerializer());
  redisTemplate.setHashKeySerializer(new StringRedisSerializer());
  redisTemplate.setHashValueSerializer(new JdkSerializationRedisSerializer());
  redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
  redisTemplate.setConnectionFactory(factory);
  }
  

  /**
  * 实例化 HashOperations 对象,可以使用 Hash 类型操作
  *
  * @param redisTemplate
  * @return
  */
  @Bean
  public HashOperations<String, String, Object> hashOperations(RedisTemplate<String, Object> redisTemplate) {
  return redisTemplate.opsForHash();
  }
  

  /**
  * 实例化 ValueOperations 对象,可以使用 String 操作
  *
  * @param redisTemplate
  * @return
  */
  @Bean
  public ValueOperations<String, Object> valueOperations(RedisTemplate<String, Object> redisTemplate) {
  return redisTemplate.opsForValue();
  }
  

  /**
  * 实例化 ListOperations 对象,可以使用 List 操作
  *
  * @param redisTemplate
  * @return
  */
  @Bean
  public ListOperations<String, Object> listOperations(RedisTemplate<String, Object> redisTemplate) {
  return redisTemplate.opsForList();
  }
  

  /**
  * 实例化 SetOperations 对象,可以使用 Set 操作
  *
  * @param redisTemplate
  * @return
  */
  @Bean
  public SetOperations<String, Object> setOperations(RedisTemplate<String, Object> redisTemplate) {
  return redisTemplate.opsForSet();
  }
  

  /**
  * 实例化 ZSetOperations 对象,可以使用 ZSet 操作
  *
  * @param redisTemplate
  * @return
  */
  @Bean
  public ZSetOperations<String, Object> zSetOperations(RedisTemplate<String, Object> redisTemplate) {
  return redisTemplate.opsForZSet();
  }
  
}
页: [1]
查看完整版本: spring boot整合redis