Метод findAll Mon go Repository - исключить поля для создания более легких объектов - PullRequest
1 голос
/ 14 января 2020

Я использую Spring Boot. Я хочу внедрить метод findAll (логический свернутый) в моем сервисе. Я использую MongoRepository в качестве дао, и я хотел использовать метод findAll. Если для этого свернутого параметра установлено значение false, то я возвращаю dao.findAll (), , но если свернутый параметр установлен в значение true, я хотел бы исключить некоторые тяжелые поля (например, список). Могу ли я исключить эти поля с запросами и используя конструктор моего класса, который имеет меньше входных параметров? Я новичок в запросах с MongoRepository.

Заранее спасибо

1 Ответ

1 голос
/ 14 января 2020

если вы используете MongoRepository, вы можете ограничить поля (см. https://docs.spring.io/spring-data/mongodb/docs/1.3.3.RELEASE/reference/html/mongo.repositories.html)

@Query(value="{ 'firstname' : ?0 }", fields="{ 'firstname' : 1, 'lastname' : 1}")
List<Person> findByThePersonsFirstname(String firstname);

Если вы хотите вернуть разные поля на основе параметра, вы можете определить 2 разных метода в интерфейс MongoRepository

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...