У меня есть приложение SpringBoot с MongoDB.База данных имеет документы со структурой ниже.
Я пытаюсь написать метод в классе Repository (который расширяет MongoRepository), который позволит мне выбирать документы, где:
- GATE_1, GATE_2 и GATE_3 имеют значение true.
- GATE_1, GATE_2, GATE_3 - истина, а FEATURE_1 - истина.
Методы в классе репозитория в конечном итоге вызываются теми, кто находится в контроллере - по сути, это REST API, который предоставляет имена шлюзов, имена функцийи ожидаемые значения, для тех.Я посмотрел вокруг, но не нашел аналогичного вопроса.Если я пропустил уже заданный вопрос, отправьте меня на этот вопрос.
{
"_id" : JUUID("80e5ab1b-cc46-48c2-b6f1-ef73db6b07d0"),
"_class" : "com.mycompany.myservice.model.mymodel",
"createDate" : ISODate("2018-10-15T18:54:52.000Z"),
"field1Version" : "9850691",
"field2Version" : "8950691",
"field3Version" : "9967662",
"field4Version" : "d047fb9",
"type" : "META",
"features" : [
{
"featureName" : "FEATURE_1",
"featureValue" : "true",
"createDate" : ISODate("2018-10-15T05:59:21.000Z")
}
],
"gates" : [
{
"gateName" : "GATE_1",
"gateValue" : "true",
"createDate" : ISODate("2018-10-15T05:59:21.000Z")
},
{
"gateName" : "GATE_2",
"gateValue" : "false",
"createDate" : ISODate("2018-10-18T08:59:21.000Z")
},
{
"gateName" : "GATE_3",
"gateValue" : "true",
"createDate" : ISODate("2019-02-11T02:46:01.000Z")
}
]
},
{
"_id" : JUUID("80e5ab1b-cc46-48c2-b6f1-ef73db6b07d0"),
"_class" : "com.mycompany.myservice.model.mymodel",
"createDate" : ISODate("2018-10-15T18:54:52.000Z"),
"field1Version" : "6789691",
"field2Version" : "5980691",
"field3Version" : "9997662",
"field4Version" : "d047fb9",
"type" : "META",
"features" : [
{
"featureName" : "FEATURE_1",
"featureValue" : "true",
"createDate" : ISODate("2018-10-15T05:59:21.000Z")
}
],
"gates" : [
{
"gateName" : "GATE_1",
"gateValue" : "true",
"createDate" : ISODate("2018-10-15T05:59:21.000Z")
},
{
"gateName" : "GATE_2",
"gateValue" : "true",
"createDate" : ISODate("2018-10-18T08:59:21.000Z")
},
{
"gateName" : "GATE_3",
"gateValue" : "true",
"createDate" : ISODate("2019-02-11T02:46:01.000Z")
}
]
}