Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Spring
- JWT
- 프로퍼티
- yml
- actuator
- Security
- Request
- @RequestBody
- DTO
- 코드워즈
- Boot
- Codewars
- Docker
- response
- RequestBody
- springboot
- 로그인
- 파라미터
- @RequestParam
- 헬스체크
- @Value
- property
- ResponseDto
- enum
- 반환
- 디자인 패턴
- redis
- 코딩테스트
- RequestParam
- 플라이웨이트
Archives
- Today
- Total
있을 유, 참 진
[Redis] 스프링부트 Redis 설정 및 적용하기 본문
Dependency 추가 & Yaml 파일 설정
💡 password를 설정했다면 yml 파일에 password 또한 설정해준다.
// Redis
implementation 'org.springframework.boot:spring-boot-starter-data-redis'
#Redis 설정
spring:
redis:
lettuce:
pool:
max-active: 5
max-idle: 5
min-idle: 2
host: localhost
port: 6379
password: 1234
Redis Configuration 설정
@Configuration
@EnableRedisRepositories
public class RedisConfig {
@Value("${spring.redis.host}")
private String host;
@Value("${spring.redis.port}")
private int port;
@Value("${spring.redis.password}")
private String password;
@Bean
public RedisConnectionFactory redisConnectionFactory() {
RedisStandaloneConfiguration redisConfiguration = new RedisStandaloneConfiguration();
redisConfiguration.setHostName(host);
redisConfiguration.setPort(port);
redisConfiguration.setPassword(password);
LettuceConnectionFactory lettuceConnectionFactory = new LettuceConnectionFactory(redisConfiguration);
return lettuceConnectionFactory;
}
@Bean
public RedisTemplate<String, String> redisTemplate() {
RedisTemplate<String, String> redisTemplate = new RedisTemplate<>();
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new StringRedisSerializer());
redisTemplate.setConnectionFactory(redisConnectionFactory());
return redisTemplate;
}
}
Redis 테스트
💡 가져오고 싶은 Redis의 Key를 넣었을 때 가져오는 GET Api 생성, 해당 Redis에는 ‘testKey1:testValue1’이라는 데이터가 들어가 있다.
@RequiredArgsConstructor
@RequestMapping("/redis")
@RestController
public class RedisController {
private final RedisTemplate<String, String> redisTemplate;
@GetMapping("/{key}")
public ResponseEntity<Object> getRedisKey(@PathVariable String key) {
ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
String value = valueOperations.get(key);
return ResponseEntity.status(HttpStatus.OK).body(value);
}
}
결과확인
💡 `localhost/redis/testKey1`이라는 주소로 접근했을 때 아래와 같은 값을 받아온다.
testValue1
'Redis' 카테고리의 다른 글
[Redis] Docker Redis 설치 및 운영 (0) | 2023.04.22 |
---|
Comments