1. 새로운 할인 정책 개발 이전에 만든 고정할인 정책 대신에 비율 할인 정책으로 변경하려고 한다. 비율 할인 정책을 개발해보자. > .../core/discount/RateDiscountPolicy 해당 코드에 ctrl + shift + t를 누르면 테스트 코드를
다음과 같이 주문 도메인을 제작하고자 한다. 클라이언트는 주문 서비스에 주문 생성을 요청한다.할인을 위해서는 회원 등급이 필요하다. 그래서 주문 서비스는 회원 저장소에서 회원을 조회한다.주문 서비스는 회원 등급에 따른 할인 여부를 할인 정책에 위임한다.주문 서비스는 할
1.프로젝트 생성 start.spring.io에서 설정을 다음과 같이 합니다. Spring Boot버전은 최신 버전 중 snapshot이나 rc1이 적혀있지 않는 버전을 선택합니다. 저는 java 버전이 안맞아서 2.7.17로 다시 선택하였습니다. Dependenci
추상화캡슐화상속다형성객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 객체들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메시지를 주고받고, 데이터를 처리할 수 있다. (협력)객체 지향 프로그래밍은 프로그
회원가입, 회원 조회 기능에 시간 측정 기능은 핵심 관심 사항이 아닙니다. AOP: Aspect Oriented Programming공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) 분리hellospring하위 디렉
회원 등록, 회원 목록 페이지를 templates하위의 members 디렉토리를 만들어 관리한다. 해당 디렉토리에 createMemberForm.html을 만든다. 컨트롤러에 해당 페이지와 url을 연결시켜준다.코드를 보면 /members/new 주소로 들어가면(get
먼저 home화면을 다음과 같이 예제 코드를 사용하여 구성하였다.home컨트롤러에 @GetMapping 추가하여 home.html을 연결하였다. 우선 순위 상 index.html보다 위에 있으므로 index.html이 아닌 home.html이 띄워지게 된다. http&
회원 컨트롤러가 회원 서비스와 레파지토리를 사용할 수 있게 의존 관계를 준비하자생성자에 @Autowired가 있으면 스프링이 연관된 객체를 스프링 컨테이너에서 찾아서 넣어준다(dipendency injection). 현재 위 코드에 @Controller가 있으므로 해당
저번에 만든 레파지토리를 사용하여 회원 서비스를 만들기 위해 service 디렉토리를 생성하였다. 멤버 서비스는 다음과 같이 구현한다. 멤버 서비스의 기능은 간단하게 회원 가입 및 중복 회원 검출, 전체 회원 조회, id로 멤버 검색이다. 해당 서비스가 잘 돌아가는데
비지니스 요구사항은 다음과 같다.데이터: 회원 ID, 이름기능: 회원등록, 조회DB: 아직 선정되지 않음(가상의 시나리오)웹 어플리케이션의 구조는 다음과 같다.클래스 의존관계는 다음과 같은데 DB가 선정되지 않았기에 인터페이스로 구현 클랫스를 변경할 수 있도록 설계하였
클라이언트의 요청에 대한 response는 크게 2가지가 있다.1\. html2\. api앞에서는 html을 response하는 것에 대해 다뤄보았고 이번에는 api를 제공해 줄것이다. HelloController에 다음 내용을 추가하자페이지의 소스를 확인하면 다음과
MVC: model, view, controller기존 model1 방식으로는 view에서 controller의 기능까지 다 구현했었다.(jsp)지금은 따로 분리해서 구현 (- 선택과 집중)HelloController에 다음 코드를 추가한다. template디렉토리에
static디렉토리에 hello-static.html을 만든다.서버를 실행시켜 http://localhost:8080/hello-static.html 에 접속해보면 다음과 같이 결과가 나온다. 말 그대로 정적 컨텐츠라서 안에 특별히 프로그래밍을 할 수 없다.
static 파일에 index.html파일을 만들자서버를 실행시키면 다음과 같이 출력이 된다. spring에서는 static 폴더에 있는 index.html을 찾아 welcome page로 지정하기에 별 다른 설정 없이 해당 화면이 실행된 것을 확인할 수 있다. hel
김영한 님의 spring 입문 강의를 듣고 배운 내용을 정리하려고 합니다. https://start.spring.io/위 사이트로 가서 프로젝트를 생성해줍니다. 설정은 다음과 같이 했습니다. 빌드 툴 같은 경우에는 Gradle로 설정하였습니다. 최근 Maven