redis介紹
Redis是目前業界使用最廣泛的內存數據存儲。相比memcached,Redis支持更豐富的數據結構,例如hashes, lists, sets等,同時支持數據持久化。除此之外,Redis還提供一些類數據庫的特性,比如事務,HA,主從庫。可以說Redis兼具了緩存系統和數據庫的一些特性,因此有着豐富的應用場景。本文介紹Redis在Spring Boot中兩個典型的應用場景。
如何使用
1、引入 spring-boot-starter-redis
# REDIS (RedisProperties)
# Redis數據庫索引(默認爲0)
spring.redis.database=0
# Redis服務器地址
spring.redis.host=192.168.0.58
# Redis服務器連接端口
spring.redis.port=6379
# Redis服務器連接密碼(默認爲空)
spring.redis.password=
# 連接池最大連接數(使用負值表示沒有限制)
spring.redis.pool.max-active=8
# 連接池最大阻塞等待時間(使用負值表示沒有限制)
spring.redis.pool.max-wait=-1
# 連接池中的最大空閒連接
spring.redis.pool.max-idle=8
# 連接池中的最小空閒連接
spring.redis.pool.min-idle=0
# 連接超時時間(毫秒)
spring.redis.timeout=0
springboot2.x 的 RedisCacheManager變化
由於最近在學着使用redis做緩存,使用的是springboot2.x來搭建的項目。
看了看網上的一些教程,但是大多數教程都是基於1.x的版本來講解的,但是springboot2.x之後發生了一些變動,網上想找一些資料不太容易。
springboot配置緩存過期時間,網上大部分資料是使用ReidsCacheManager來進行自定義的配置
以下是大部分網上的代碼(這也是基於springboot1.x的版本可以使用的)
@Bean
public CacheManager cacheManager(RedisTemplate redisTemplate) {
RedisCacheManager cacheManager= new RedisCacheManager(redisTemplate);
cacheManager.setDefaultExpiration(60);
Map<String,Long> expiresMap=new HashMap<>();
expiresMap.put("Product",5L);
cacheManager.setExpires(expiresMap);
return cacheManager;
}
然而在springboot2.x中,RedisCacheManager已經沒有了單參數的構造方法
@Configuration
@EnableCaching
public class RedisConfiguratioon extends CachingConfigurerSupport {
@SuppressWarnings("rawtypes")
@Bean
public CacheManager cacheManager(RedisConnectionFactory redisConnectionFactory) {
RedisCacheConfiguration redisCacheConfiguration=RedisCacheConfiguration.defaultCacheConfig()
.entryTtl(null);
return RedisCacheManager.builder(RedisCacheWriter.nonLockingRedisCacheWriter(redisConnectionFactory))
.cacheDefaults(redisCacheConfiguration).build();
}
@Bean
@SuppressWarnings({"rawtypes", "unchecked"})
public RedisTemplate<Object,Object> redisTemplate(RedisConnectionFactory connectionFactory){
RedisTemplate<Object,Object> redisTemplate=new RedisTemplate<>();
redisTemplate.setConnectionFactory(connectionFactory);
//使用Jackson2JsonRedisSerializer替換默認的序列化規則
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer=new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper objectMapper=new ObjectMapper();
objectMapper.setVisibility(PropertyAccessor.ALL,JsonAutoDetect.Visibility.ANY);
objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
//設置value的序列化規則
redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);
//設置key的序列化規則
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.afterPropertiesSet();
return redisTemplate;
}
}
Example 1
Project: springboot_cwenao File: RedisConfig.java
@Bean(name="redisTemplate")
public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {
RedisTemplate<String, String> template = new RedisTemplate<>();
RedisSerializer<String> redisSerializer = new StringRedisSerializer();
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setConnectionFactory(factory);
//key序列化方式
template.setKeySerializer(redisSerializer);
//value序列化
template.setValueSerializer(jackson2JsonRedisSerializer);
//value hashmap序列化
template.setHashValueSerializer(jackson2JsonRedisSerializer);
return template;
}
Example 2
Project: springboot_cwenao File: RedisConfig.java
@Bean(name=“redisTemplate”)
public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {
RedisTemplate<String, String> template = new RedisTemplate<>();
RedisSerializer<String> redisSerializer = new StringRedisSerializer();
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setConnectionFactory(factory);
//key序列化方式
template.setKeySerializer(redisSerializer);
//value序列化
template.setValueSerializer(jackson2JsonRedisSerializer);
//value hashmap序列化
template.setHashValueSerializer(jackson2JsonRedisSerializer);
return template;
}
Example 3
Project: springboot_op File: RedisConfiguration.java
/**
* RedisTemplate配置
* @param factory
* @return
*/
@Bean
@SuppressWarnings({"rawtypes", "unchecked"})
public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {
StringRedisTemplate template = new StringRedisTemplate(factory);
//定義value的序列化方式
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setValueSerializer(jackson2JsonRedisSerializer);
template.setHashValueSerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
Example 4
Project: JavaQuarkBBS File: RedisConfig.java
@SuppressWarnings("rawtypes")
@Bean
public CacheManager cacheManager(RedisTemplate redisTemplate) {
RedisCacheManager rcm = new RedisCacheManager(redisTemplate);
//設置緩存過期時間
//rcm.setDefaultExpiration(60);//秒
return rcm;
}
Example 5
Project: springboot-smart File: RedisConfiguration.java
@Bean("redisTemplate") //新家的這個註解 10-26 12:06
@SuppressWarnings({ "rawtypes", "unchecked" })
public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory redisFactory){
StringRedisTemplate template = new StringRedisTemplate(redisFactory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new
Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setValueSerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
Example 6
Project: action File: RedisUtil.java
@Bean
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory connectionFactory) {
RedisTemplate<Object, Object> template = new RedisTemplate<>();
template.setConnectionFactory(connectionFactory);
//使用Jackson2JsonRedisSerializer來序列化和反序列化redis的value值
Jackson2JsonRedisSerializer serializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper mapper = new ObjectMapper();
mapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
serializer.setObjectMapper(mapper);
template.setValueSerializer(serializer);
//使用StringRedisSerializer來序列化和反序列化redis的key值
template.setKeySerializer(new StringRedisSerializer());
template.afterPropertiesSet();
return template;
}
Example 7
Project: keti File: AttributeCacheFactory.java
private AttributeCache createAttributeCache(final String cacheType, final long maxCachedIntervalMinutes,
final String zoneName, final RedisTemplate<String, String> cacheRedisTemplate,
final BiFunction<String, String, String> getKey, final boolean enableAttributeCaching) {
String[] profiles = environment.getActiveProfiles();
if (!enableAttributeCaching) {
LOGGER.info("Caching disabled for {} attributes.", cacheType);
return new NonCachingAttributeCache();
}
if (ArrayUtils.contains(profiles, "redis") || ArrayUtils.contains(profiles, "cloud-redis")) {
LOGGER.info("Redis caching enabled for {} attributes.", cacheType);
return new RedisAttributeCache(maxCachedIntervalMinutes, zoneName, getKey, cacheRedisTemplate);
}
LOGGER.info("In-memory caching enabled for {} attributes.", cacheType);
return new InMemoryAttributeCache(maxCachedIntervalMinutes, zoneName, getKey);
}
Example 8
Project: storm_spring_boot_demo File: RedisConfUtils.java
public static RedisTemplate buildRedisTemplate(byte[] redisProperties){
JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory(
RedisConfUtils.getClusterConfiguration(
(RedisProperties) Serializer.INSTANCE.deserialize(redisProperties)));
RedisTemplate<String, Long> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(jedisConnectionFactory);
jedisConnectionFactory.afterPropertiesSet();
GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer();
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
redisTemplate.setKeySerializer(stringRedisSerializer);
redisTemplate.setValueSerializer(genericJackson2JsonRedisSerializer);
redisTemplate.setHashKeySerializer(stringRedisSerializer);
redisTemplate.setHashValueSerializer(genericJackson2JsonRedisSerializer);
redisTemplate.afterPropertiesSet();
return redisTemplate;
}
Example 9
Project: ait-platform File: AitCacheConfigBase.java
@Bean
@Primary
RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory rcf) {
AitLogger.debug(logger, "Serializer overriding ");
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(rcf);
GenericJackson2JsonRedisSerializer valSerializer = new GenericJackson2JsonRedisSerializer();
template.setValueSerializer(valSerializer);
template.setKeySerializer(new RedisSerializer<Object>() {
@Override
public byte[] serialize(Object t) throws SerializationException {
return (t == null ? null : (":" + t.toString()).getBytes());
}
@Override
public Object deserialize(byte[] bytes) throws SerializationException {
return (bytes == null ? null : new String(bytes));
}
});
template.setHashValueSerializer(valSerializer);
return template;
}
Example 10
Project: data-migration File: RedisConfiguration.java
@Bean
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory connectionFactory) {
RedisTemplate<Object, Object> template = new RedisTemplate<>();
template.setConnectionFactory(connectionFactory);
//使用Jackson2JsonRedisSerializer來序列化和反序列化redis的value值
Jackson2JsonRedisSerializer serializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper mapper = new ObjectMapper();
mapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
serializer.setObjectMapper(mapper);
template.setValueSerializer(serializer);
//使用StringRedisSerializer來序列化和反序列化redis的key值
template.setKeySerializer(new StringRedisSerializer());
template.afterPropertiesSet();
return template;
}
Example 11
Project: happylifeplat-transaction File: RedisClusterConfig.java
@Bean
public RedisTemplate getStringRedisTemplate() {
StringRedisTemplate clusterTemplate = new StringRedisTemplate();
clusterTemplate.setConnectionFactory(jedisConnectionFactory());
clusterTemplate.setKeySerializer(new StringRedisSerializer());
clusterTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
return clusterTemplate;
}
Example 12
Project: JavaStudy File: Test.java View source code
@org.junit.Test
public void test(){
String user_prefix="user_";
User user=new User(1,"aric");
ApplicationContext atc=new AnnotationConfigApplicationContext(RedisStartConfig.class);
RedisTemplate<String,User> obj = (RedisTemplate) atc.getBean("redisTemplate");
PrinterUtils.printILog(obj.getKeySerializer());
obj.opsForValue().set(user_prefix+user.getId(),user);
RedisSentinelConfiguration RedisSentinelConfiguration = (RedisSentinelConfiguration) atc.getBean("sentinelConfig");
PrinterUtils.printILog(RedisSentinelConfiguration);
User value=obj.opsForValue().get(user_prefix+1);
PrinterUtils.printELog(value.getUsername());
}
Example 13
Project: springboot-shiro-cas-mybatis File: RedisConfig.java
@SuppressWarnings({"unchecked","rawtypes"})
@Bean
public RedisTemplate<String, String> redisTemplate(
RedisConnectionFactory factory) {
StringRedisTemplate template = new StringRedisTemplate(factory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setValueSerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
Example 14
Project: springboot-shiro-cas-mybatis File: RedisConfig.java
@SuppressWarnings({"unchecked","rawtypes"})
@Bean
public RedisTemplate<String, String> redisTemplate(
RedisConnectionFactory factory) {
StringRedisTemplate template = new StringRedisTemplate(factory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setValueSerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
Example 15
Project: parrot-rest File: ApplicationTestConfiguration.java
@Bean
public RedisTemplate<String, Phrase> redisTemplate() {
@SuppressWarnings("unchecked")
RedisTemplate<String, Phrase> template = mock(RedisTemplate.class);
opsHash = new HashOperationsMock();
when(template.opsForHash()).thenReturn(opsHash);
return template;
}
Example 16
Project: JavaQuarkBBS File: RedisConfig.java
@Bean
public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {
StringRedisTemplate template = new StringRedisTemplate(factory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setValueSerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
Example 17
Project: JavaQuarkBBS File: RedisConfig.java
@SuppressWarnings("rawtypes")
@Bean
public CacheManager cacheManager(RedisTemplate redisTemplate) {
RedisCacheManager rcm = new RedisCacheManager(redisTemplate);
//設置緩存過期時間
//rcm.setDefaultExpiration(60);//秒
return rcm;
}
Example 18
Project: lemcloud File: RedisConfig.java
@SuppressWarnings({ "unchecked", "rawtypes" })
private void setSerializer(RedisTemplate<String, Object> template) {
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
template.setKeySerializer(new StringRedisSerializer());
//template.setValueSerializer(jackson2JsonRedisSerializer); //-- 值序列化爲json
template.setValueSerializer(new RedisObjectSerializer()); //-- 默認序列化爲byte[]
}
Example 19
Project: iBase4J-Common File: RedisHelper.java
@SuppressWarnings("unchecked")
public void setRedisTemplate(RedisTemplate<Serializable, Serializable> redisTemplate) {
this.redisTemplate = redisTemplate;
this.keySerializer = (RedisSerializer<String>)redisTemplate.getKeySerializer();
this.valueSerializer = (RedisSerializer<Object>)redisTemplate.getValueSerializer();
CacheUtil.setCacheManager(this);
}
Example 20
Project: iBase4J-Common File: JedisConfig.java
@Bean
@Qualifier("redisTemplate")
public CacheManager redisCacheManager(RedisTemplate<Serializable, Serializable> redisTemplate) {
RedisCacheManager cacheManager = new RedisCacheManager(redisTemplate);
cacheManager.setTransactionAware(true);
cacheManager.setDefaultExpiration(PropertiesUtil.getInt("redis.expiration", 10));
return cacheManager;
}
Example 21
Project: neto File: AppConfig.java View source code
private RedisTemplate jsonRedisTemplate(JedisConnectionFactory jedisConnectionFactory, Class<?> clazz) {
RedisTemplate template = new RedisTemplate();
template.setKeySerializer(new StringRedisSerializer());
template.setValueSerializer(new Jackson2JsonRedisSerializer(clazz));
template.setHashKeySerializer(new StringRedisSerializer());
template.setHashValueSerializer(new Jackson2JsonRedisSerializer(clazz));
template.setConnectionFactory(jedisConnectionFactory);
return template;
}
Example 22
Project: tx-lcn File: JedisClusterConfig.java
@Bean
public RedisTemplate redisTemplateFactory(){
RedisTemplate redisTemplate =new RedisTemplate();
redisTemplate.setConnectionFactory(jedisConnectionFactory());
//指定具體序列化方式 不過這種方式不是很好,一個系統中可能對應值的類型不一樣,如果全部使用StringRedisSerializer 序列化
//會照成其他類型報錯,所以還是推薦使用第一種,直接指定泛型的類型,spring 會根據指定類型序列化。
//redisTemplate.setKeySerializer( new StringRedisSerializer());
//redisTemplate.setValueSerializer(new StringRedisSerializer());
//redisTemplate.setHashKeySerializer(new StringRedisSerializer());
//redisTemplate.setHashValueSerializer(new StringRedisSerializer());
return redisTemplate;
}
Example 23
Project: xproject File: RedisCache.java
public RedisCache(String cacheName, RedisTemplate<String, Object> redisTemplate, boolean cacheExpire,
int cacheExpireSeconds, String cacheKeyPrefix) {
super();
Assert.hasText(cacheName, "Parameter 'cacheName' can not be empty!");
Assert.notNull(redisTemplate, "Parameter 'redisTemplate' can not be null!");
Assert.isTrue(cacheExpireSeconds > 0, "Parameter 'cacheExpireSeconds' must be > 0!");
this.cacheName = cacheName;
this.redisTemplate = redisTemplate;
this.cacheExpire = cacheExpire;
this.cacheExpireSeconds = cacheExpireSeconds;
this.cacheKeyPrefix = cacheKeyPrefix;
}
Example 24
Project: automat File: RedisHelper.java
@SuppressWarnings("unchecked")
private RedisTemplate<Serializable, Serializable> getRedis() {
if (redisTemplate == null) {
synchronized (RedisHelper.class) {
if (redisTemplate == null) {
redisTemplate = (RedisTemplate<Serializable, Serializable>)applicationContext
.getBean("redisTemplate");
}
}
}
return redisTemplate;
}
Example 25
Project: spring-data-examples File: ApplicationConfiguration.java
@Bean
RedisTemplate<?, ?> redisTemplate(RedisConnectionFactory connectionFactory) {
RedisTemplate<byte[], byte[]> template = new RedisTemplate<byte[], byte[]>();
template.setConnectionFactory(connectionFactory);
return template;
}
Example 26
Project: filter File: JedisClusterConfig.java
@Bean
public RedisTemplate redisTemplateFactory(){
RedisTemplate redisTemplate =new RedisTemplate();
redisTemplate.setConnectionFactory(jedisConnectionFactory());
//指定具體序列化方式 不過這種方式不是很好,一個系統中可能對應值的類型不一樣,如果全部使用StringRedisSerializer 序列化
//會照成其他類型報錯,所以還是推薦使用第一種,直接指定泛型的類型,spring 會根據指定類型序列化。
// redisTemplate.setKeySerializer( new StringRedisSerializer());
// redisTemplate.setValueSerializer(new StringRedisSerializer());
// redisTemplate.setHashKeySerializer(new StringRedisSerializer());
// redisTemplate.setHashValueSerializer(new StringRedisSerializer());
return redisTemplate;
}
Example 27
Project: OutsourcedProject File: RedisConfig.java
@Bean
public <K, V> RedisTemplate<K, V> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<K, V> template = new RedisTemplate<>();
template.setConnectionFactory(redisConnectionFactory);
template.setKeySerializer(new StringRedisSerializer());
template.setHashKeySerializer(new StringRedisSerializer());
template.setValueSerializer(new GenericJackson2JsonRedisSerializer());
template.setHashValueSerializer(new GenericJackson2JsonRedisSerializer());
template.setEnableTransactionSupport(true);
template.afterPropertiesSet();
return template;
}
Example 28
Project: MI-S File: RedisConfig.java
@Bean
public CacheManager cacheManager(RedisTemplate redisTemplate){
RedisCacheManager rcm = new RedisCacheManager(redisTemplate);
//設置緩存過期時間
//rcm.setDefaultExpiration(60);//秒
return rcm;
}
Example 29
Project: boot-mon File: BootmonServerRedisConfig.java
@Bean
public RedisTemplate<String, Object> redisTemplate() {
final RedisTemplate<String, Object> template = new RedisTemplate<String, Object>();
template.setConnectionFactory(jedisConnectionFactory());
template.setValueSerializer(new GenericToStringSerializer<Object>(Object.class));
return template;
}
Example 30
Project: bird-java File: RedisCacher.java V
@SuppressWarnings("unchecked")
private RedisTemplate<Serializable, Serializable> getRedis() {
if (redisTemplate == null) {
synchronized (RedisCacher.class) {
if (redisTemplate == null) {
redisTemplate = (RedisTemplate<Serializable, Serializable>)applicationContext
.getBean("redisTemplate");
}
}
}
return redisTemplate;
}`在這裏插入代碼片`
Example 31
Project: shoucang File: RedisConfiguration.java
@Bean(name = "redisListTemplate")
RedisTemplate<String, Long> redisListTemplate() {
RedisTemplate<String, Long> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(jedisConnectionFactory());
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new GenericToStringSerializer<>(Long.class));
return redisTemplate;
}
`
Example 32
Project: shoucang File: RedisConfiguration.java View source code 5 votes vote down vote up
@Bean(name = "redisCountingTemplate")
RedisTemplate<String, Integer> redisCountingTemplate() {
RedisTemplate<String, Integer> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(jedisConnectionFactory());
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
redisTemplate.setHashValueSerializer(new GenericToStringSerializer<>(Integer.class));
return redisTemplate;
}
Example 33
Project: raven File: CacheService.java View source code 5 votes vote down vote up
/** 查詢huawei accessToken */
public AccessToken getHuaweiAK()
{
Cache redisCache1101 = commonCacheManager.getCache("redisCache1101");
@SuppressWarnings("unchecked")
RedisTemplate<String, AccessToken> template = (RedisTemplate<String, AccessToken>)redisCache1101.getNativeCache();
Set<String> keys = template.keys(CacheKeyPrefixConst.HW_ACCESS_TOKEN);
if (null == keys || keys.isEmpty())
{
return null;
}
return redisCache1101.get(keys.iterator().next(), AccessToken.class);
}
Example 34
Project: DanmuChat File: RedisConfig.java View source code 5 votes vote down vote up
@SuppressWarnings("rawtypes")
@Bean
public CacheManager cacheManager(RedisTemplate redisTemplate){
RedisCacheManager redisCacheManager =new RedisCacheManager(redisTemplate);
//設置緩存過期時間
redisCacheManager.setDefaultExpiration(60);//秒
return redisCacheManager;
}
Example 35
Project: DanmuChat File: RedisConfig.java View source code 5 votes vote down vote up
/**
* 序列化設置
*/
private void initRedisTemplate(RedisTemplate<String, String> redisTemplate, RedisConnectionFactory factory) {
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
redisTemplate.setHashValueSerializer(new JdkSerializationRedisSerializer());
redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
redisTemplate.setConnectionFactory(factory);
}
Example 36
Project: spring-boot-start-current File: SpringCacheConfig.java View source code 5 votes vote down vote up
@Bean
public CacheManager cacheManager ( RedisTemplate redisTemplate ) {
RedisCacheManager redisCacheManager = new RedisCacheManager( redisTemplate );
// 默認30分鐘
redisCacheManager.setDefaultExpiration( defaultExpiration );
redisCacheManager.setExpires( expires );
redisCacheManager.setUsePrefix( usePrefix );
return redisCacheManager;
}
Example 37
Project: keti File: RedisAttributeCache.java View source code 5 votes vote down vote up
RedisAttributeCache(final long maxCachedIntervalMinutes, final String zoneName,
final BiFunction<String, String, String> getKey,
final RedisTemplate<String, String> resourceCacheRedisTemplate) {
this.maxCachedIntervalMinutes = maxCachedIntervalMinutes;
this.zoneName = zoneName;
this.getKey = getKey;
this.resourceCacheRedisTemplate = resourceCacheRedisTemplate;
}
Example 38
Project: keti File: CommonRedisConfig.java View source code 5 votes vote down vote up
private RedisTemplate<String, String> createCacheRedisTemplate(final RedisConnectionFactory redisConnectionFactory,
final String redisTemplateType) {
RedisTemplate<String, String> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
redisTemplate.setDefaultSerializer(new StringRedisSerializer());
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new StringRedisSerializer());
LOGGER.info("Successfully created {} Redis template.", redisTemplateType);
return redisTemplate;
}
Example 39
Project: storm_spring_boot_demo File: RedisConfig.java View source code 5 votes vote down vote up
@Bean("redisTemplate")
public RedisTemplate<?, ?> getRedisTemplate(){
RedisTemplate<?,?> template = new StringRedisTemplate(jedisConnectionFactory);
GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer = new GenericJackson2JsonRedisSerializer();
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
template.setKeySerializer(stringRedisSerializer);
template.setValueSerializer(genericJackson2JsonRedisSerializer);
template.setHashKeySerializer(stringRedisSerializer);
template.setHashValueSerializer(genericJackson2JsonRedisSerializer);
return template;
}
Example 40
Project: xq_seckill_microservice File: CachingConfig.java View source code 5 votes vote down vote up
@Bean
public RedisTemplate byteRedisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate redisTemplate = new RedisTemplate();
redisTemplate.setConnectionFactory(redisConnectionFactory);
redisTemplate.setEnableDefaultSerializer(true);
//redisTemplate.setDefaultSerializer(new StringRedisSerializer());
redisTemplate.setKeySerializer(new StringRedisSerializer());
//redisTemplate.setValueSerializer(new StringRedisSerializer());
//redisTemplate.setEnableTransactionSupport(true);
redisTemplate.afterPropertiesSet();
return redisTemplate;
}