springboot 2.5.0 과 redis 통합 설정 상세 설명

기본 개요
캐 시 를 왜 사용 합 니까?
캐 시 는 메모리 에 저 장 된 데이터 백업 으로 데이터 가 본질 적 으로 변 하지 않 았 을 때
데이터베이스 조회 대신 메모리 에서 데 이 터 를 직접 조회 할 수 있 습 니 다(디스크 에서)
CPU 가 디스크 를 읽 는 것 보다 메모리 읽 는 속도 가 빨 라 효율 을 높 일 수 있다.
레 디 스 캐 시
Remote Dictionnary Server(원 격 데이터 서비스)는 메모리 캐 시 데이터베이스 입 니 다.
다섯 가지 상용 데이터 형식:String(문자열),List(목록),Set(집합),Hash(산열),ZSet(질서 집합)
지속 가능:실행 하면 서 하 드 디스크 에 백업 하여 정전 등 우연 한 상황 을 방지 하여 메모리 의 데 이 터 를 잃 어 버 립 니 다.
레 디 스 다운로드
링크:https://pan.baidu.com/s/1BMt4cIxjKTtyL3T0_iSC2w추출 코드:rkne
1.pom 의존 도 추가

<!--redis-->
 <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
 </dependency>
2.application.properties 설정 파일

#===========Redis  ===========
# Redis     (   0)  
spring.redis.database=0
# Redis       
spring.redis.host=127.0.0.1
# Redis         
spring.redis.port=6379
# Redis       
spring.redis.password=root
#         (          )  
spring.redis.pool.max-active=200
#            (          )  
spring.redis.pool.max-wait=-1
#             
spring.redis.pool.max-idle=10
#              
spring.redis.pool.min-idle=0
#       (  )
spring.redis.timeout=2000ms
spring.redis.jedis.pool.max-wait=-1ms
#===========Redis  ===========
3.RedisConfig.java 설정 클래스

package org.fh.config;

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.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.annotation.JsonAutoDetect;

/**
 *    :Redis
 * from:www.fhadmin.org
 */
@Configuration
public class RedisConfig {

	@Bean
	@SuppressWarnings("all")
	public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
		RedisTemplate<String, Object> template = new RedisTemplate<String, Object>();
		template.setConnectionFactory(factory);
		Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
		ObjectMapper om = new ObjectMapper();
		om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
		om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance , ObjectMapper.DefaultTyping.NON_FINAL);
		jackson2JsonRedisSerializer.setObjectMapper(om);
		StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
		// key  String      
		template.setKeySerializer(stringRedisSerializer);
		// hash key   String      
		template.setHashKeySerializer(stringRedisSerializer);
		// value       jackson
		template.setValueSerializer(jackson2JsonRedisSerializer);
		// hash value       jackson
		template.setHashValueSerializer(jackson2JsonRedisSerializer);
		template.afterPropertiesSet();
		return template;
	}

}
4.redis 호출

 @Autowired
   private RedisTemplate<String, Object> redisTemplate;

	/**
	 *       
	 * @param key  
	 * @return  
	 */
	public Object get(String key) {
		return key == null ? null : redisTemplate.opsForValue().get(key);
	}

	/**
	 *       
	 * @param key  
	 * @param value  
	 * @return true   false  
	 */
	public boolean set(String key, Object value) {
		try {
			redisTemplate.opsForValue().set(key, value);
			return true;
		} catch (Exception e) {
			//e.printStackTrace();
			return false;
		}
	}
이상 은 springboot 2.5.0 통합 redis 설정 에 대한 상세 한 내용 입 니 다.springboot 2.5.0 통합 redis 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!

좋은 웹페이지 즐겨찾기