인프런 커뮤니티 질문&답변

조찬수님의 프로필 이미지
조찬수

작성한 질문수

게시판 검색 시 질문입니다

작성

·

162

0

안녕하세요, 영한님

강의에서 검색을 위해서 조건을 담은 클래스를 따로 만드는 것으로 확인을 했습니다.

그런데 그렇게 하지 않고 serarch(@ResquestParam String memberName, @RequestParam OrderStatus)

이런식으로 @RequestParam을 통해서 여러가지 조건들을 받고, 내부적으로 stream을 사용하여 검사하는 것은 어떤지 질문드립니다

아래와 같이 자바로직으로 검색 결과를 가져오는 것은 잘 사용되지 않는 방법인가요?

lists = orderService.getAllOrders().stream()
                   .filter(s -> s.getStudyState().equals(OrderStatus.CANCEL))
                   .collect(Collectors.toList());

답변 2

1

조찬수님의 프로필 이미지
조찬수
질문자

아, 제가 질문을 잘못 올렸네요 답변 감사드리고 앞으로 또 유의하겠습니다~!

1

안녕하세요. 찬수님^^

이렇게 하면 모든 데이터를 DB에서 애플리케이션 서버로 다 올린 다음에 데이터를 필터링 해야 합니다. 만약에 데이터가 수백만 건이라면 서버에 메모리 부족으로 장애가 발생합니다.

따라서 데이터를 DB에서 조회할 때 최대한 줄여서 조회해야 합니다.

추가로 질문은 해당 강의의 게시판에서 올려주시길 부탁드립니다.

이렇게 해당 강의가 아닌 곳에 오픈 게시판에 올려주시면 제가 질문 메일을 받지 못하고, 질문이 올라온 것 자체를 인지할 수 없습니다. 주변에 아는 분이 알려주셔서 찾아서 답변을 드릴 수 있었습니다.

감사합니다.

조찬수님의 프로필 이미지
조찬수

작성한 질문수

질문하기