MemberRepository test에서 객체생성
376
작성한 질문수 4
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예
[질문 내용]
스프링 MVC 1편 - 회원 관리 웹 애플리케이션 요구사항 강의를 듣다 질문이 생깁니다.
이 때 test를 하면서 MemberRepository를 싱글톤으로 유지한다 하셨는데
테스트 코드에서 바로 MemberRepository.getInstance를 사용할 수 있는 이유가 MemberRepository 클래스에서 static으로 new를 해서 맞나요??
제 이해로는 코드가 실행이 되면 모든 static 부분 코드를 읽어 실행하는데 이 때 new MemberRepository가 실행되어 객체가 생성되었다 이해했습니다. 제 이해가 맞을까요?
답변 1
0
안녕하세요, 인프런 AI 인턴이에요. 사용자님의 질문에 답변드리겠습니다.
스프링 MVC 1편 - 회원 관리 웹 애플리케이션 요구사항 강의에서 테스트 코드에서 MemberRepository를 싱글톤으로 유지하는 방법을 말씀드리신 부분이 궁금하신 것이 맞나요?
정답은 예입니다. MemberRepository 클래스에서 static으로 new를 사용해 객체를 생성하면, 해당 클래스의 인스턴스를 한 번만 생성하고 모든 곳에서 공유할 수 있게 됩니다. 즉, MemberRepository.getInstance()를 통해 어디서든 동일한 인스턴스에 접근할 수 있게 됩니다.
static 부분 코드는 프로그램 실행 시 한 번만 실행되는데, 그 때 MemberRepository 클래스의 static 블록에서 new MemberRepository()를 호출하여 객체를 생성합니다. 이후에는 getInstance() 메소드를 통해 생성된 인스턴스를 반환하게 됩니다.
이러한 방법으로 MemberRepository를 싱글톤으로 구현하여 객체를 공유하고, 여러 테스트 코드에서 접근하여 사용할 수 있게 됩니다.
제 답변이 도움이 되셨길 바랍니다. 추가로 궁금하신 사항이 있으시면 언제든지 물어보세요. 감사합니다.
servlet과 container에 대한 질문입니다
0
29
1
api를 어느 컨트롤러에 작성해야하는지는 어떤 기준으로 해야하나요?
0
66
1
jsp 의존성 수정 요청
0
83
2
요즘 웹 서버가 주로 사용되는 이유는 SPA 구조 때문일까요 ?
0
145
1
save() 메서드 문의
0
67
1
절대 경로로 templates/basic 하위 파일 열면 css 적용 안되는 현상
0
102
1
request-body-json
0
84
2
MVC 패턴의 적용 단위
0
97
1
RequestMapping을 이용한 핸들러, 어댑터
0
120
2
save 후 결과화면
0
91
2
jsp를 이용한 view
0
98
1
application.properties에 debug 추가해도 결과가 똑같습니다.
0
181
1
수업 코드 제공 관련 문의
0
98
2
RequestMappingHandlerAdapter의 Controller 호출 과정
0
102
3
파일 오픈 시
0
70
1
스프링 배치 관련
0
78
1
@RequestParam의 defaultValue가 blank 값도 처리하는 지 여부
0
114
1
postman으로 /request-body-json-v1 호출시 500 error
0
96
1
프론트엔드와 백엔드의 mvc, rest api에 대한 질문
0
82
1
모델의 역할과 계층 분리에 대한 이해 차이 + 추가질문
0
113
1
console log 출력 관련 질문입니다.
0
75
1
애플리케이션이 실행 되지 않습니다 ㅠㅠㅠ
0
140
1
html 변경하는 부분 적용 문제
0
103
1
한글 깨짐
0
77
2





