회원가입을 진행할 때 무료로 아이템, 테마를 제공하는 기능을 추가하는데

계속 findById 부분에서 해당 테마를 못찾는 상황이 발생했다.

따로 에러가 발생하지 않아서 찾는데 30분정도가 걸렸다

// 3번 아이템 꺼냄
        Items items = itemsRepository.findByItemNo(3L).get();

        // 스티커 무료 제공
        ItemsMapping itemsMapping = new ItemsMapping(savedUser, items);
        itemsMappingRepository.save(itemsMapping);
        
        // 1번 테마 꺼냄
        Theme theme = themeRepository.findById(1L).get();

        ThemeMapping themeMapping = new ThemeMapping(savedUser, theme);
        themeMappingRepository.save(themeMapping);

이 부분이었는데

Theme theme = themeRepository.findById(1L).get();

여기서 계속 못찾는 에러가 발생했었다.

다시 천천히 찾아보니 의존성 주입을 해주지 않아서 문제가 발생했었다.

위에서 private ThemeRepository themeRepository; 이렇게 만들어주고 생성자 주입을 해주는데 따로 넣어주지 않아서 발생했던 오류였다.

생성자 주입을 할 때 필드에 final을 붙여주면 컴파일단계에서 캐치가 가능하다. 다음부터는 꼭 final 붙여야겠다.


nginx 설정 정리

Untitled

두 개의 conf를 만들었다.