백엔드/Spring(Boot)

스프링 API 리스트 전송 방법

김어찐 2021. 10. 18. 01:17
728x90

컨트롤러

무조건 dto를 만들어주고 리스트를 바로 전송하지않고 한번 Result 클래스로 감싸서 전송한다

    @GetMapping("/api/v2/members")
    public Result membersV2(){
        List<Member> findMembers = memberService.findMembers();
        List<MemberDto> collect = findMembers.stream()
                .map(m -> new MemberDto(m.getName()))
                .collect(Collectors.toList());
        return new Result(collect.size(),collect);
    }

    @Data
    @AllArgsConstructor
    static class Result<T>{
        private int count;
        private T data;
    }

    @Data
    @AllArgsConstructor
    static class MemberDto{
        private String name;
    }

결과

728x90