inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

회원 관리 웹 애플리케이션 요구사항

MemberRepository 구현 시, findAll() 메서드 질문 드립니다.

368

youn

작성한 질문수 12

0

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

[질문 내용]
public List<Member> findAll() {
    return new ArrayList<>(store.values());
}

store에 있는 값을 전체 조회하는 부분에서 new ArrayList<>(); 를 해주었는데
이 이유가 반환값에 컬렉션이다 보니 store.values()를 반환하게 되면
findAll() 메서드를 호출하는 곳에서 store의 데이터 조작이 가능하기 때문인게 맞을까요??

맞다면 findAll() 메서드 외에도 다른 경우에도 리턴값을 줄때 변경이 불가능하도록 new를 통해 새로운 객체를 리턴해주던지

dto와 같은 객체를 통해서 리턴을 해주어 변경에 닫혀있도록 구현해주는 것이 좋은 구현인지 궁금합니다

 

spring MVC

답변 1

1

김영한

안녕하세요. youn님

생각하신 것 처럼 가장 좋은 것은 모든 데이터를 복사해서 넘겨주는 것입니다.

예제에서 그 부분까지 구현하기는 너무 복잡해서 해당 부분은 생략했다고 이해하시면 됩니다.

감사합니다.

0

youn

아하! 답변 감사합니다! :D

servlet과 container에 대한 질문입니다

0

24

1

api를 어느 컨트롤러에 작성해야하는지는 어떤 기준으로 해야하나요?

0

64

1

jsp 의존성 수정 요청

0

78

2

요즘 웹 서버가 주로 사용되는 이유는 SPA 구조 때문일까요 ?

0

143

1

save() 메서드 문의

0

67

1

절대 경로로 templates/basic 하위 파일 열면 css 적용 안되는 현상

0

101

1

request-body-json

0

83

2

MVC 패턴의 적용 단위

0

97

1

RequestMapping을 이용한 핸들러, 어댑터

0

119

2

save 후 결과화면

0

89

2

jsp를 이용한 view

0

97

1

application.properties에 debug 추가해도 결과가 똑같습니다.

0

178

1

수업 코드 제공 관련 문의

0

97

2

RequestMappingHandlerAdapter의 Controller 호출 과정

0

100

3

파일 오픈 시

0

70

1

스프링 배치 관련

0

78

1

@RequestParam의 defaultValue가 blank 값도 처리하는 지 여부

0

112

1

postman으로 /request-body-json-v1 호출시 500 error

0

95

1

프론트엔드와 백엔드의 mvc, rest api에 대한 질문

0

79

1

모델의 역할과 계층 분리에 대한 이해 차이 + 추가질문

0

111

1

console log 출력 관련 질문입니다.

0

75

1

애플리케이션이 실행 되지 않습니다 ㅠㅠㅠ

0

139

1

html 변경하는 부분 적용 문제

0

103

1

한글 깨짐

0

76

2