Страницы

Поиск по вопросам

воскресенье, 29 марта 2020 г.

Преобразовать данные из MongoDB

#java #spring #mongodb #spring_boot


Есть класс Person, в нем есть поле name. Я записываю эти данные в Mongo, но на выходе,
хочу получать не записанные по 1-у классы, а все поля name из них, но в List.
Вот код 

@RestController
public class Post_Get {
    @Autowired
    private PersonRepository personRepository;
    private List persons = new ArrayList<>();

    @PostMapping("api/names")
    public void post (@RequestParam("username") String name) {
        Person person = new Person(name);
        personRepository.save(person);
    }

    @GetMapping("api/names")
    public List get () {
        return personRepository.findAll();
    }
}

    


Ответы

Ответ 1



@GetMapping("api/names") public List getNames() { return personRepository.findAll() .stream() .map(Person::getName) .filter(Objects::nonNull) .collect(Collectors.toList()); } Или без лишней конвертаций public interface PersonRepository extends Repository { Stream findByNameNotNull(); } @GetMapping("api/names") public List getNames() { return personRepository.findByNameNotNull() .map(Person::getName) .collect(Collectors.toList()); }

Комментариев нет:

Отправить комментарий