SpringBoot에서 Redis를 사용해보기
10962 단어 Redisspring-bootnosql
소개
대상
Redis란?
NoSQL에 대해서는, 이쪽의 기사가 대단히 잘 정리되어 있었으므로, 참고로 해 주세요.
NoSQL에 대해 공부한다.
조속히 놀아보기
준비한 것
redis 측면
터미널에서 brew install로 redis 설치
% brew install redis
redis-server로 확인
% redis-server
이런 녀석이 나오면 OK입니다.
Ctrl+C로 빠져 갑시다.
redis-cli하기
화가 나서 ...
다음 명령 실행
% ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents
% launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
다시 redis-cli
넣은 것 같습니다. 놀 수있었습니다!
Spring측
build.gradle
compile ('org.springframework.boot:spring-boot-starter-redis:1.4.7.RELEASE')
위의 설정을 추가하면 RedisTemplate을 사용할 수 있습니다.
이 녀석을 사용하면 Map을 사용하는 감각으로 Redis에 Key와 Value를 등록할 수 있습니다.
application.yml
spring.redis:
host: localhost
port: 6379
password: null
database: 0
이런 식으로 yml에 써 두면 이미 redis를 사용할 수 있습니다. 디폴트의 설정치이므로 쓸 필요가 없으면 미안해.
database는 디폴트로 0부터 사용해 가게 되어 있는 것 같습니다.
움직여 보자
그런 이렇게, 이미 Redis에 등록할 수 있게 되어 있습니다만, 나머지는 조금 샘플 코드만 올려 둡니다.
RedisSampleData
@Data
@Getter
@Setter
class RedisSampleData {
private String string;
private List<String> list;
private Map<String, String> map;
}
RedisSampleController
@RestController
@RequestMapping(value = "/SampleRedis")
public class RedisSampleController {
@Autowired
private StringRedisTemplate redisTemplate;
@PostMapping
public void post(@RequestBody RedisSampleData redisSampleData) {
redisTemplate.delete("redis-tutorial:string");
redisTemplate.opsForValue()
.set("redis-tutorial:string", redisSampleData.getString());
redisTemplate.delete("redis-tutorial:list");
redisTemplate.opsForList()
.rightPushAll("redis-tutorial:list",
redisSampleData.getList().toArray(new String[0]));
redisTemplate.delete("redis-tutorial:map");
redisTemplate.opsForHash()
.putAll("redis-tutorial:map", redisSampleData.getMap());
}
@GetMapping
public RedisSampleData get() {
RedisSampleData redisSampleData = new RedisSampleData();
redisSampleData.setString(
redisTemplate.opsForValue()
.get("redis-tutorial:string")
);
redisSampleData.setList(
redisTemplate.opsForList()
.range("redis-tutorial:list", 0, -1)
);
redisSampleData.setMap(
redisTemplate.<String, String>opsForHash()
.entries("redis-tutorial:map")
);
return redisSampleData;
}
}
request.json
{
"string": "太郎",
"list": [
"二郎",
"三郎"
],
"map": {
"田中": "太郎",
"山田": "二郎"
}
}
두드려 보자・・・
% curl -X POST -H "Content-Type: application/json" http://localhost:8080/SampleRedis -d @request.json
% curl "localhost:8080/SampleRedis"
잡감
참조원
Spring Data Redis
Reference
이 문제에 관하여(SpringBoot에서 Redis를 사용해보기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yut_arrows/items/07eabf48235d04331f9e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)