이 강의에서는
우리의 EasyBank 웹 애플리케이션을 위한
새로운 REST 서비스들을 개발해보겠습니다
그러기 위해서 어떻게 할 것인가 하면
새로운 Spring Boot 웹 애플리케이션을 만들고
우리가 지금까지 개발한 Spring Security Basic에
수정사항을 저장하지는 않겠습니다
왜냐하면 전에 말했듯이
GitHub 리포트에 코드를 섹션 별로
공유할 예정이기 때문입니다
이 프로젝트 Spring Security Basic은
섹션 1에 포함되기 때문에
여기서 언급하지 않겠습니다
그럼 섹션 2에서는
이 프로젝트를 그냥 복사해서
같은 폴더 위치에 넣을 것인데
이 프로젝트 이름을 springsecsection2로
수정하겠습니다
그러면 Spring Sec은 Spring Security를 의미하고
섹션은 이 프로젝트의 분류를 말해줍니다
이 프로젝트는
섹션 2에서 개발할 것이기 때문에
이렇게 이름을 지은 것입니다
폴더명을 수정한 다음에는
이 프로젝트를 열어야 하는데
이 새로운 프로젝트 안에서 우리는 pom.xml을 열어야합니다
왜냐하면 pom.xml에서 몇 가지를 수정해야 하기 때문입니다
그럼 열어보겠습니다
pom.xml에서는 보시다시피
현재 artifact ID와 name을
이전 프로젝트인 Spring Security Basic에서
가져오고 있습니다
하지만 우리는 새로운 프로젝트명을 입력하려고 합니다
이 예전 이름을 삭제하고
springsecsection2라는 새 이름을
기입하겠습니다
name에도 마찬가지로
기입하겠습니다
이 두 가지를 수정하면
pom.xml은 다 됐습니다
pom.xml을 닫겠습니다
그 다음에 수정할 것은
소스 폴더에 들어가서 메인 폴더
Java 폴더 안에 Com, Easybytes
그 다음에는 Spring Security Basic이 있습니다
그 안에는 controller가 있고
Spring Boot 메인 애플리케이션이 있습니다
이 두 가지를 복사하고 이 폴더 밖에 붙여 넣겠습니다
왜냐하면 지금 적용되는
Spring Security Basic이라는
명명 규칙을 없애고 싶기 때문입니다
이 controller와 Spring Boot 메인 클래스를 복사하겠습니다
이젠 이 폴더 또는 패키지를 안전하게 삭제할 수 있습니다
이제 확인해보시면 패키지 이름은 com, easybytes이고
그 안에 controller가 있습니다
controller 패키지와 함께
Spring Boot 메인 클래스가 있는데
그건 Spring Security Basic 애플리케이션입니다
이 클래스에도 괜찮은 이름을 지어주겠습니다
이 코드를 신규 섹션 프로젝트에 가져갈 때마다
이름을 수정할 필요가 없게 말입니다
그래서 이제는
이 Java 클래스에 이름을 지어주겠습니다
여기에는 EasyBankBackendApplication이라는
이름을 붙여주겠습니다
Java 코드 안에서도
똑같이 수정해야 합니다
그럼 이걸 열어서 두 군데에
수정을 해보겠습니다
하나는 클래스 이름이고 또 하나는
여기 SpringApplication.run 메소드 안입니다
이것으로 됐습니다
여기 패키지 이름은 이 패키지가 더 이상 없기 때문에
삭제해도 될 것 같습니다
Spring Boot 메인 애플리케이션은
이제 다 되었습니다
이 메인 소스 폴더 외에
테스트 폴더에도 똑같이 해주겠습니다
테스트 폴더 안에
Spring Security Basic이라는
패키지를 삭제하겠습니다
그리고 똑같이 하기 위해
먼저 이 클래스를 폴더 밖으로 꺼내고
이 Spring Security Basic 패키지를 삭제하겠습니다
여기 이름도 마찬가지로
Spring Boot 메인 애플리케이션 클래스에 부여한
같은 이름으로 수정하겠습니다
여기에 부여할 이름은
Tests 전의 이름을 전부 삭제하고
Easy Bank Backend Application Test라는
제가 원하는 이름을 입력하겠습니다
Java 코드 안에도 똑같이 해주어야 합니다
이걸 열어서 필요한 부분을 모두 수정하겠습니다
여기는 한 군데 뿐입니다
여기 입력값을 수정하겠습니다
Tests 전에 Easy Bank Backend Application Test라는
제가 원하는 이름을 입력합니다
여기서도 패키지 이름을 수정해줍니다
이것이면 됐습니다
다음 단계로 이 프로젝트를
저의 IntelliJ IDEA에 업로드하겠습니다
그러기 위해 IDEA에 접속하겠습니다
여기 IDEA 안에서 File을 클릭하고
New - Module from Existing Sources 메뉴를 선택합니다
여기서는 springsecsection2를 선택하고
그 안에는 pom.xml이 있습니다
이걸 선택하고 Open 버튼을 클릭합니다
이렇게 하면 springsecsection2라는
우리가 만든 새로운 Spring Boot 웹 애플리케이션을
가져올 수 있습니다
그럼 이 모듈을 컴파일해보겠습니다
분명히 몇 가지 컴파일 이슈가 있을텐데
하나씩 해결할 수 있으니 걱정 마십시오
첫 번째 컴파일 이슈는
controller 클래스로 가면
Welcome Controller가 있는데
컴파일 이슈가 있습니다
이 패키지가 유효하지 않기 때문에 할 일은
이 controller 전체를 삭제하는 것인데
우리에게 더 이상 필요하지 않고 우리의 REST 서비스를 위한 controller를
직접 개발할 수 있기 때문입니다
그래서 이 controller를 삭제하는 것이고
다음으로 EasyBankBackendApplication라는
이 메인 클래스 안의
문제에 대해 알아보겠습니다
우리가 타겟 폴더도 복사했는데
이 폴더가 우리가 복사한 다른 프로젝트들의 클래스를
컴파일한 게 문제일 수도 있습니다
단순히 이걸 모두 삭제하고
한 번 더 개발을 시도해볼 수 있습니다
그러기 위해 여기에 우클릭하고
springsecsection2를 다시 개발하겠습니다
컴파일이 끝나길 기다립니다
이 컴파일이 끝나고 나면
저의 모든 컴파일이 완료됐고
필수적인 dependencies이 제 프로젝트에 다운로드 중인 것을
볼 수 있습니다
이제 필수 소스 파일과 문서 파일이 Maven을 통해
다운로드 중인 것을
여기서 확인할 수 있습니다
몇 분 걸릴 것 같습니다
완료되길 기다리겠습니다
동시에 말씀드리자면 복사하기, 프로젝트 이름 수정하기
제가 이 모든 걸 보여드리는 이유는
몇몇 학생들이 저에게 연락해서 설명 드리는 겁니다
GitHub 리포트에 코드를 업로드했다고 했는데
이 프로젝트들에는 해당 섹션 마지막에 다루는
코드가 나와있는데
그런데 이 학생들은 해당 섹션 초기 단계의 코드가 나온
프로젝트를 받을 수 있을지 물어봅니다
저와 함께 쉽게 코딩하기 위해서 입니다
여기에 제 답은 간단합니다
저는 항상 앞 섹션 코드를
현재 섹션 프로젝트에 복사하고
Spring Boot 웹 애플리케이션 안에서
필요한 패키지 이름을 수정하고
필요한 클래스를 삭제할 것입니다
springsecsection2에서
그렇게 한 겁니다
그래서 다음 섹션부터는 엄청나게 간단할 겁니다
그저 복사하고 pom.xml 안의 값들을
수정하면 됩니다
잘 따라오고 계시길 바랍니다
똑같이 해주시거나
GitHub 리포트에서 코드를 다운받을 수 있습니다
하지만 GitHub 리포트의 코드에는
우리가 특정 섹션에서 다룬
전체 코드가 나와있을 겁니다
이렇게 해서 섹션 2에 해당하는
새로운 프로젝트를 성공적으로 제작하고
모든 컴파일 이슈를 해결했습니다
개발은 성공적입니다
다음 강의에서는
우리의 EasyBank 웹 애플리케이션에 필요한
새로운 REST 서비스 개발을 시작해보겠습니다
이 강의에서 다룬 내용을 잘 이해하셨으면 좋겠습니다
감사드리며 다음 강의에서 뵙겠습니다
수고하셨습니다