inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Trong thực tế! Spring Boot và JPA Usage 2 - Phát triển API và tối ưu hóa hiệu suất

API yêu cầu thành viên

count 변수로 조회된 데이터 숫자를 세는 부분

Đã giải quyết

746

kukaeden

16 câu hỏi đã được viết

0

안녕하세요, 영한님 강의를 듣다가 궁금한 부분을 질문드립니다!

return new Result(collect.size(), collect);


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

->  count값은 강의에서 4

위와 같은 조회 부분에서 Dto 클래스인 Result에  count 변수를 선언하면 collect.size()로 바로 연결이 됨을 볼 수 있었는데,

이는 2개의 파라미터가 순서대로 적용되어 Result라는 객체가 생성되어서 그렇다고 이해하면 되는지 궁금합니다.

너무 기초적인 질문 같은데 초보라서 그렇다고 너그럽게 이해 부탁드립니다.

항상 감사합니다..

collect.size() spring-boot count spring 숫자세기 java JPA

Câu trả lời 2

1

kukaeden

아 생성자에서 인자값을 지정할 때, 컬렉션의 숫자세는 것을 첫번째 파라미터로 잡았군요.

이해가 되었습니다.. 답변 정말 감사드립니다..!!^^

1

OMG

이해가 되었다니 다행입니다.

열공하세요!

화이팅!!

1

OMG

안녕하세요 LucasBae님

이해하신게 맞습니다만 강의에서 사용하신 코드를 보면 스트림에 제네릭까지 쓰기 때문에 조금 어렵게 느껴지셨을 수도 있겠네요. 구조가 복잡하니 알고 있던 내용이더라도 어렵게 다가올 수 있을 것 같습니다. 그래서 

저 같은 경우엔 어렵게 느껴지는 부분이 있다면 제가 알고 있는 내용으로 비슷하게 바꿔서 이해하려고 합니다.

@GetMapping("/people")
public Team getMembers() {
Person person1 = new Person(1L, "아이유");
Person person2 = new Person(2L, "김영한");
Person person3 = new Person(3L, "OMG");
List<Person> people = List.of(person1, person2, person3);

return new Team(people.size(), people);
}

@Data
@AllArgsConstructor
static class Team {
private int count;
private List<Person> person;
}
@AllArgsConstructor
@Data
@NoArgsConstructor
public class Person {
private Long id;
private String name;
}


팀 클래스는 회원 수와 회원들을 <List>로 갖을 수 있고, 스트림 대신 명시적으로 리스트에 값을 대입하는 방식으로 바꿔보았는데요, 이러한 구조 속에서 이해하신대로 제가 작성한 예시로 본다면 첫번째 인자로 count를, 두번째 인자로 List를 필요로 한다고 할 수 있습니다.

인텔리제이를 사용하신다면 아래와 같이 new Team(<커서위치>) 커서 위치에서 ctrl + p 누르면 어떤 값을 인자로 받는지 볼 수 있거든요, 이걸 참고하시면 클래스의 변수 순서를 봐야하는 번거로움을 줄 일 수 있습니다.

또한 결과 출력 화면에서도 볼 수 있다시피 count 이후에 person을, id 이후에 name의 순서를 띄는것을 볼 수 있구요.

이해가 안가거나 보충 설명이 필요하시면 댓글 남겨주세요.

감사합니다.

@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.

0

8

2

강의 관련 외 질문입니다.

0

85

2

SpringBoot4 + Hibernate7 모듈 등록 방법 공유

1

103

1

BeanCreationException

0

100

3

Update 후 UpdateMemberResponse 매핑할 때

0

59

1

트랜잭션을 사용 안 할 때 커넥션은 언제 가져오나요?

0

104

2

페이징 + 검색조건 관련해서 질문드립니다.

0

75

1

Query Dsl Q파일 질문입니다.

0

87

1

루트 쿼리라는것은

0

64

1

메서드를 분리하는 기준

0

73

1

findAllWithMemberDelivery 메서드 질문드립니다.

0

117

3

연관관계 매핑을 안 쓸 경우, 사용해야 하는 전략

0

93

2

fetch join과 영속화와 OSIV의 관계

0

94

2

Distinct 사용 전 결과에 대한 의문

0

121

2

레포지토리 계층에서의 트랜잭션에 대한 의문

0

63

1

영속성 컨텍스트 생명주기의 신기한 부분이 있습니다.

0

79

2

dto 필드 속 엔티티 여부

0

65

1

뷰템플릿 사용 시

0

83

2

Result 클래스 관련 질문

0

58

1

@PostConstruct 프록시 관련 질문드립니다

0

89

1

DTO 대신 Form 사용은 안되나요?

0

141

1

OSIV ON 상태일 때

0

101

1

fetch join VS fetch join 페이징 궁금증

0

191

2

양방향 연관관계 알아보는 법?

0

111

1