spring boot 集成 Redis

一、引入包

 

    org.springframework.boot 

    spring-boot-starter-redis 

    RELEASE

二、配置文件

# REDIS (RedisProperties)

# Redis数据库索引(默认为0)

spring.redis.database=0 

# Redis服务器地址

spring.redis.host=127.0.0.1

# Redis服务器连接端口

spring.redis.port=6379 

# Redis服务器连接密码(默认为空)

spring.redis.password=123456

# 连接池最大连接数(使用负值表示没有限制)

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=2000ms

三、配置类

import org.springframework.cache.annotation.EnableCaching;

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.RedisTemplate;

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

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

import com.fasterxml.jackson.annotation.JsonAutoDetect;

import com.fasterxml.jackson.annotation.PropertyAccessor;

import com.fasterxml.jackson.databind.ObjectMapper;

@Configuration

@EnableCaching

public class RedisConfig{

    @Bean

    public RedisTemplate 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;

    }

}

四、使用

@Cacheable(value="user-key",key = "'user'")

public BsideProduct getUser() {

BsideProduct bsideProduct = new BsideProduct();

bsideProduct.setProductNum(1);

bsideProduct.setProductName("bsideProduct1");

    return bsideProduct;

}

你可能感兴趣的:(spring boot 集成 Redis)