spring boot 에 redis 를 내장 하 는 사용 방법 예제
4488 단어 springboot인 라인redis
레 디 스 는 현재 업계 에서 가장 광범 위 하 게 사용 되 는 메모리 데이터 저장 소 다.memcached 보다 Redis 는 hashes,lists,sets 등 다양한 데이터 구 조 를 지원 하 며 데이터 의 지속 화 를 지원 합 니 다.그 밖 에 Redis 는 사무,HA,메 인 라 이브 러 리 등 데이터 뱅 크 의 특성 도 제공 합 니 다.Redis 는 캐 시 시스템 과 데이터베이스 의 일부 특성 을 겸비 하고 있어 다양한 응용 장면 을 가지 고 있다 고 할 수 있다.
머리말
유닛 테스트 에 있어 우 리 는 가능 한 한 단일 환경 을 유지 하고 네트워크 자원 과 통신 하지 않도록 해 야 한다.그러면 테스트 의 안정성 과 객관성 을 확보 할 수 있다.springboot 라 는 프레임 워 크 에 있어 유닛 테스트 JUNIT 를 통합 시 켰 고 디자인 프로젝트 를 할 때 여러 가지 내장 저장 도 구 를 사용 할 수 있다.예 를 들 어 mongodb,redis,my sql 등 이다.오늘 은 주로 embedded-redis 의 사용 에 대해 말씀 드 리 겠 습 니 다.
사용 방법 은 다음 과 같다.
패키지 참조 build.gradle 추가
testCompile(
'com.github.kstyrc:embedded-redis:0.6'
)
설정 주입 추가
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.HashOperations;import org.springframework.data.redis.core.ListOperations;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.data.redis.core.SetOperations;import org.springframework.data.redis.core.ValueOperations;import org.springframework.data.redis.core.ZSetOperations;import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;import org.springframework.data.redis.serializer.StringRedisSerializer;
@Configuration
public class RedisConfig {
/**
* 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();
}
}
업무 층 에서 redis 사용 하기
@Autowired
RedisTemplate<String, Object> redisCacheTemplate;
사용 과정 에서 우리 의 RedisTemplate 대상 은 이미 Autowired 에 주입 되 었 다.총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가치 가 있 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin Springboot -- 파트 14 사용 사례 REST로 전환하여 POST로 JSON으로 전환前回 前回 前回 記事 の は は で で で で で で を 使っ 使っ 使っ て て て て て リクエスト を を 受け取り 、 reqeustbody で 、 その リクエスト の ボディ ボディ を を 受け取り 、 関数 内部 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.