inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

다운 스트림 컬렉터1

자바 그룹핑

101

H K

작성한 질문수 93

0



질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]

안녕하세요 갓영한님
자바에서 이렇게 그룹핑 하는 경우도 있을까요 ?

실무에서 보통 쿼리쪽에서 하지않나용??

java 함수형-프로그래밍 lambda optional

답변 2

0

김영한

안녕하세요. H K님

데이터베이스에서 조회하는 데이터의 경우 당연히 데이터베이스에서 처리해서 받아오는 것이 좋습니다 🙂

하지만 데이터베이스가 아닌 곳에서 조회하는 데이터의 경우 이런 로직이 필요하겠지요?

감사합니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

H K님, 자바에서 스트림을 이용해 데이터를 그룹핑하는 것은 충분히 가능합니다. Java 8의 스트림 API는 Collectors 클래스를 사용하여 데이터를 그룹핑할 수 있는 다양한 방법을 제공합니다. 예를 들어, Collectors.groupingBy() 메소드를 이용하면 특정 키로 데이터를 그룹핑할 수 있습니다.

다음과 같은 예제 코드로 이해를 도울 수 있습니다:

List<User> users = ... // 사용자가 정의한 리스트
Map<String, List<User>> groupedByCountry = users.stream()
    .collect(Collectors.groupingBy(User::getCountry));

실무에서는 데이터베이스 쿼리를 사용하여 데이터를 그룹핑하는 것이 일반적입니다. 이는 데이터베이스가 대량의 데이터를 효율적으로 처리할 수 있기 때문입니다. 하지만 메모리 내에서 처리할 경우에는 스트림 API를 이용한 그룹핑도 좋은 접근법입니다.

추가적으로 Spring Data JPA와 같은 라이브러리를 사용하면, Java 코드 내에서 데이터베이스 그룹핑을 더 쉽게 구현할 수 있어 실무에서의 활용도가 높습니다. 스트림을 사용하여 데이터베이스 쿼리의 결과를 스트림으로 처리할 수도 있습니다.

더 궁금한 내용이 있다면 언제든지 질문해 주세요!


출처: Spring Data JPA - Reference Documentation v3.1.5

db sql vs java stream 비교 궁금증 알려주세요!

1

75

1

파라미터 구분이 안되는지..?

0

70

1

자바 21 버전을 꼭 써야하나요??

0

144

2

9. 스트림 API3-컬렉터 오타?

0

78

2

(추석 챌린지) 복습 정리내용

0

95

1

람다 궁금한 점

0

73

2

스트림과 for문 질문

0

44

1

디폴트 메서드를 사용한 리펙토링

0

52

1

실무에서의 커스텀 Collector 사례 여부

0

65

1

IntelliJ 한글 깨지는 현상 문의

0

202

1

함수형 프로그래밍 적용 범위/원칙

0

61

1

스트림에 대해서 질문(float)은 사용하는지

0

58

1

[자료 패키지 누락] 2.람다 자료에서 문제 패키지명 생략 (25page)

0

60

2

지연 평가

0

68

1

메서드 시그니처

0

101

3

고급편 우선순위

0

130

3

스프링 데이터 JPA 인터페이스에서의 default 메서드 사용

0

113

2

독립적인 스레드 할당 시 스레드 개수는 어떻게 할당해야 할까요?

0

87

1

병렬 프레임 병목 현상 해결책에 대해 궁금한 점

0

103

1

스트림 중복 에러 관련 질문

0

70

1

자바 버전이 31 까지 업데이트 된다면 새로운 자바 강의를 추가 하실 건가요?

0

134

1

임계값과 스레드수를 줄일 경우 교착상태가 발생할수 있는건가요?

0

103

2

변수 합치기에 대해서 질문드립니다!

0

83

2

flatMap 응용 방법에 대해서, 이렇게 하는게 맞는지?

0

128

1