복붙노트

[REDIS] 자동 봄 데이터 + 레디 스 키를 증가

REDIS

자동 봄 데이터 + 레디 스 키를 증가

나는 레디 스에 봄 데이터 CRUD 작업을하려고하지만 주로 나는 레디 스에서 자동 증가 키를 저장해야합니다.

나는 레디 스에 SpringData에 대한 간단한 CRUD 작업을 시도하지만 자동 증가 키 기능은 없습니다.

이걸 어떻게 달성 할 수 있습니까?

해결법

  1. ==============================

    1.당신이 스프링 데이터 저장소 레디 스 사용하는 경우 값의 요구가 자동으로 생성하고 클래스에 @RedisHash 주석 될 수있는 org.springframework.data.annotation.Id으로 필드 주석을 달 수 있습니다.

    당신이 스프링 데이터 저장소 레디 스 사용하는 경우 값의 요구가 자동으로 생성하고 클래스에 @RedisHash 주석 될 수있는 org.springframework.data.annotation.Id으로 필드 주석을 달 수 있습니다.

    @RedisHash("persons")
    public class Person {
    
      @Id String id;
      String firstname;
      String lastname;
      Address address;
    }
    

    지금 실제로 저장을위한 구성 요소에 책임을 가지고 검색하려면 저장소 인터페이스를 정의 할 필요가있다.

    public interface PersonRepository extends CrudRepository<Person, String> {
    
    }
    
    @Configuration
    @EnableRedisRepositories
    public class ApplicationConfig {
    
      @Bean
      public RedisConnectionFactory connectionFactory() {
        return new JedisConnectionFactory();
      }
    
      @Bean
      public RedisTemplate<?, ?> redisTemplate() {
    
        RedisTemplate<byte[], byte[]> template = new RedisTemplate<byte[], byte[]>();
        return template;
      }
    }
    

    당신이 당신의 구성 요소로와 분사 PersonRepository에 갈 수 위의 설정을 감안할 때.

    @Autowired PersonRepository repo;
    
    public void basicCrudOperations() {
    
      Person rand = new Person("rand", "al'thor");
      rand.setAddress(new Address("emond's field", "andor"));
    
      repo.save(rand);               //1                          
    
      repo.findOne(rand.getId());    //2                          
    
      repo.count();                  //3                          
    
      repo.delete(rand);             //4                          
    }
    

    참조 : http://docs.spring.io/spring-data/redis/docs/current/reference/html/

  2. from https://stackoverflow.com/questions/43341864/spring-data-redis-with-auto-increment-key by cc-by-sa and MIT license