week1과제
기본) 바우처 관리 애플리케이션
Maven / Gradle 로 프로젝트를 실제로 구성하고 이때 Spring Boot CLI를 개발PC에 설치해서 명령어들을 사용해보고 프로젝트를 만든다. 그리고 IDE (IntelliJ)에서 실행시켜 본다.
바우처 관리 Command-line Application을 만들어본다.
스프링부트 애플리케이션으로 만든다. (Web기능이 없이만듭니다. 즉, 서버가 띄지 않고 커맨드라인 애플리케이션으로 동작해야한다.)
프로그램이 시작하면 다음과 같이 지원가능한 명령어를 알려준다.
=== Voucher Program === Type exit to exit the program. Type create to create a new voucher. Type list to list all vouchers.
create / list 커맨드를 지원한다.
create 커맨드를 통해 바우처를 생성할수 있다. (FixedAmountVoucher, PercentDiscountVoucher)
- list 커맨드를 통해 만들어진 바우처를 조회할 수 있다.
바우처 정보를 매모리에 관리한다. 어플리케이션이 종료가 되어 데이터가 모두 사라져도 괜찮습니다. (나중에 영속성을 가지도록 변경할거에요 걱정마세요!)
적절한 로그를 기록하고
logback
설정을해서 에러는 파일로 기록된다.실행가능한
jar
파일을 생성한다.(심화) 파일을 통한 데이터관리 기능과 고객 블랙 리스트 명단 관리기능
메모리 관리가 아닌 파일로 관리가 되는 Repository를 한번 만들어보세요.
- 기존 메모리 레포지토리는 지우지 말고 개발 프로파일에서만 동작하게 해보세요.
고객 블랙 리스트 명단을 작성한다.
- customer_blacklist.csv 파일을 만들고 스프링 애플리케이션에서 해당 파일을 읽을 수 있고 블랙 리스트조회 할 수있다 (추가할 필요는 없어요. 블랙리스트는 파일로만 관리된다고 가정합니다.)
YAML 프라퍼티를 만들고 어떤 설정을 만들수 있을지 고민해본다.