Redis
 sql >> база данни >  >> NoSQL >> Redis

Причинено от:java.lang.IllegalArgumentException:CONTAINING (1):[IsContaining, Containing, Contains]не се поддържа за извеждане на заявка за redis - Redis

Добре, нека започнем от „Как работи Redis“

Redis работи върху хешове за идентификатор, което помага за по-бързото местоположение на записа. @Indexed също се хешира и съхранява за по-бързо насочване на записа

Така че по подразбиране за MiddleName заявката „contain“ няма да работи, тъй като Hash за низ „Test“ няма да се съдържа в Hash за низ „TestUser“.

Но ExampleMatcher е тук, за да спаси.

Източник:https://docs.spring.io/spring-data/redis/docs/2.1.2.RELEASE/reference/html/#query-by-example

Решение за търсене RoleName на Role Object е сравнително проста:Използвайте тази заявка

userRepository.findByRoleRoleName("ADMIN")(По принцип премахнете долната черта)

И добрата новина е, че може да се комбинира с горния ExampleMatcher .

Нека обсъдим, ако имате съмнения.

Полезна справка за търсене на RoleName:Заявка за вложени обекти в Redis с помощта на Spring Data



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Изчакване при изпълнение на SET {Key}, inst:0, mgr:Неактивен, опашка:2, qu=1, qs=1, qc=0, wr=1/1, in=0/0

  2. Как мога отдалечено да проверявам данните в моите RedisCloud DBs?

  3. SQL срещу NoSQL за система за управление на инвентара

  4. doRedis връща грешки в Windows 8 x64 за различни компилации на Redis сървър

  5. Инсталиране на Redis на CentOS 8