자라선

30. Redis Connection 본문

Develop/Spring Boot

30. Redis Connection

자라선 2020. 7. 27. 17:21
docker run -p 6379:6379 --name redis_boot -d redis
docker exec -i -t redis_boot redis-cli
keys *
get {key}
hgetall {key}
hget {key} {column}

nosql Redis에 연결

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

@RedisHash의 이름을 정의 한 VO

@RedisHash("accounts")
public class Account {
    @Id
    private String id;

CrudRepository spring-data의 최상위 인터페이스 중 하나

import org.springframework.data.repository.CrudRepository;
public interface AccountRepository extends CrudRepository<Account, String> {
}

테스트를 하여 set를 통해 키, 값 저장

import me.tony.demospringboot.account.Account;
import me.tony.demospringboot.account.AccountRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Component;
import java.util.Optional;
 
@Component
public class RedisRunner implements ApplicationRunner{
 
    @Autowired
    StringRedisTemplate redisTemplate;
 
    @Autowired
    AccountRepository accountRepository;
 
    @Override
    public void run(ApplicationArguments args) throws Exception {
        ValueOperations<String, String> values = redisTemplate.opsForValue();
        values.set("thkong", "KONG");
        values.set("Boot", "stuty");
        values.set("framework", "spring");
 
        Account account = new Account();
        account.setEmail("tony950620@naver.com");
        account.setUsername("thkong");
 
        accountRepository.save(account);
 
        Optional<Account> accountOptional = accountRepository.findById(account.getId());
        System.out.println(accountOptional.get().getUsername());
        System.out.println(accountOptional.get().getEmail());
    }
}

 

'Develop > Spring Boot' 카테고리의 다른 글

32. Neo4j Connection  (0) 2020.07.27
31. MongoDB Connection  (0) 2020.07.27
29. JPA 초기화  (0) 2020.07.27
28. JPA Connection  (0) 2020.07.27
27. JPA  (0) 2020.07.27
Comments