게시글
질문&답변
2024.01.14
AfterEach 동작 과정 질문
위 의문을 해결하려면 static이 무엇인지 알아야 합니다. 말씀하신 것처럼 memberService 내부에 있는 MemoryMemberRepository 객체와, 테스트코드에서 선언된 memoryMemberRepository 는 다른 객체입니다.하지만 MemoryMemberRepository 내부를 살펴보면 "private static Map store = new HashMap();" 이라는 코드가 존재하는데요.여기에서 static이란 무엇이냐, 쉽게 말하면 static이 붙은 store라는 인스턴스를 프로그램 내에서 딱 하나만 존재하도록 만들어줍니다. 정리하면 모든 MemoryMemberRepository 객체들은 동일한 store 를 사용하고 있습니다. 코드의 흐름을 정리해드리면memoryMemberRepository.clearStore() 실행모든 MemoryMemberRepository가 함께 사용하는 store 필드가 비워짐.이후 중복_회원_예외() 메서드 실행 시 -> memberService.join() 메서드를 실행하면 비어있던 store에 데이터를 넣어줌. 이해 안가시는 부분 있으면 말씀해주세요!
- 0
- 4
- 478
질문&답변
2024.01.09
트랜잭션이 보장되고 처리되어야만 하는 N개의 작업이 있다면 별도의 서비스로 추출하라는 말이 헷갈립니다.
아, @Service를 사용하면 @Transactional가 내부적으로 적용된다고 착각을 해버렸네요.바보같은 질문이었습니다 ㅎㅎ,,, 위 예시에서는 MailService에서 어떠한 트랜잭션도 선언하지 않으면 되겠네요. 감사합니다!
- 0
- 3
- 232
질문&답변
2022.01.11
계속하기 버튼이 안보여요
혹시 아직 해결 못하셨을까봐 답변 남깁니다. 맥 환경이라면 cmd + 스크롤 땡기는거로 창을 밑으로 내릴 수 있습니다! 밑으로 땡겨보면 계속하기 버튼이 나오네요
- 0
- 2
- 338
질문&답변
2021.10.07
서블릿MVC 회원가입에 오류가 납니다 ㅠㅠ
원인을 찾았습니다. 자바 코드 문제였네요 ㅜㅜ ServletApplication 앱 실행 최상단 파일에 @ServletComponentScan S어노테이션이 안붙어있어서 문제가 발생했었네요. 혹시 같은 문제 겪는 사람들 참고하세요!
- 0
- 4
- 430
질문&답변
2021.07.28
테스트 코드 단축키가 안먹히는데 혹시 이유가 있을까요ㅠ?
강사님이 어떻게 하신 건지는 모르겠는데 test패키지 안에 있는 애들은 단축키로 안만들어지더라구요. main패키지 안에 있는 애들은 되실거에요~~!
- 0
- 3
- 280