Как построить запрос Spring JPA и извлечь данные для вложенных значений документов Couchbase?
Я пытаюсь избежать написания собственного запроса и использую метод JPA для извлечения данных на основе ключей, которые вложены в 2 уровня.
Значение документа couchbase имеет тип
Company
Где сотрудники - это список, а задачи - это свойство подчиненного сотрудника, которое представляет собой список с деталями в виде объекта
Я хотел бы запросить несколько документов и получить соответствующие записи по categoryId.
Расширение интерфейса репозитория до CouchbaseRepository с передачей Company и идентификатора документа.
Я пробовал что-то вроде
// finding by Employees-->Tasks-->Details-->CategoryId
findByEmployeesTasksDetailsCategoryId(Integer id); // Does not work
но не работает
"company": "Xyc",
"employees": {
"name": "John Smith",
"age": 24,
"tasks": [
{
"id": 231,
"date": "05-13-2019"
"details": {
"categoryName": "Software",
"categoryId": 12,
"description": "Buy Software"
"location": "Plano, Texas"
"zip": 75024
}
}
},
{
"id": 789,
"date": "05-14-2019"
"details": {
"categoryName": "Hardware",
"categoryId": 17,
"description": "Buy hardware"
"location": "Irving, Texas"
"zip": 75038
}
}
},
{
"id": 456,
"date": "05-15-2019"
"details": {
"categoryName": "Hardware",
"categoryId": 17,
"description": "Buy hardware"
"location": "Plano, Texas"
"zip": 75024
}
}
]
}
Я ищу метод JPA, где я могу получить подробное задание или детали по categoryId.
Ожидаемый результат для categoryId 17
[
{
"categoryName": "Hardware",
"categoryId": 17,
"description": "Buy keyboard and mouse"
"location": "Irving, Texas"
"zip": 75038
},
{
"categoryName": "Hardware",
"categoryId": 17,
"description": "Buy monitor"
"location": "Plano, Texas"
"zip": 75024
}
]