JPA
JAVA Stream을 이용해서 모든회원정보 추출
MIN우
2023. 1. 7. 12:33
728x90
다음과 같은 코드는 rest api 를 작성한 코드입니다.
@GetMapping("/api/v2/members")
public Result memberV2(){
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;
}
Entity를 이용하지않고 DTO클래스는 만들어주고.
각각의 Entity의 정보가 담길수 있도록 제네릭타입으로 선언해주었다.
Entity에서 모든유저의 정보 가져오기
List<Member> findMembers=memberService.findMembers();
java8의 stream을 이용해서 MemberDto형태로 변환시켜준다.
List<MemberDto> collect=findMembers.stream()
.map(m-> new MemberDto(m.getName()))
.collect(Collectors.toList());
제네릭 타입으로 반환
return new Result(collect.size(), collect);
728x90