김영한 | 스프링 핵심 원리 - 기본편을 참조한 글입니다. 1. 프로젝트 생성 아래의 스프링 부트 스타터 사이트를 이용하면 프로젝트를 편리하게 생성할 수 있다. https://start.spring.io/ 사진과 동일하게 설정하고 generate한다. 2. 비지니스 요구사항과 설계 2-1. 회원 - 회원 가입과 조회가 가능해야 한다. - 회원 등급은 일반 / VIP 로 나뉜다. - 회원 데이터는 자체 DB 를 구축할 수도 있고, 외부 시스템과 연동될 수도 있다. (미확정) 2-2. 주문 - 회원은 상품을 주문할 수 있다. 2-3. 할인 정책 - 회원 등급에 따라 할인 정책이 다르게 적용된다. - 모든 VIP 는 1000원을 할인해주는 고정 금액 할인이 적용된다. (나중에 변경 가능) - 할인 정책은 변경..
back-end
김영한 | 스프링 핵심 원리 - 기본편을 참조한 글입니다. 1. 스프링이 태어났어요 스프링이 탄생하기 전 2000년대 초반에는, EJB(Enterprise Java Beans)를 사용했다. EJB에는 이론이 어렵고 복잡하며, 값이 비싸다는 단점이 있었다. 이를 해결하기 위해 Rod Johnson과 Gaivin King이 Spring과 JPA를 개발하게 된다. Spring은 JAVA의 겨울(EJB 사용시절) 새로운 시작을 나타내는 봄이라는 의미에서 그렇게 이름붙여졌다. 2. 스프링이란? 스프링은 어떤 특정한 하나가 아닌, 여러 기술들의 집합이다. 2-1. 필수 스프링 기술 2-1-1. 스프링 프레임워크 스프링 프레임워크도 여러 기술들을 합쳐 부르는 단어이다. 핵심 기술 : 스프링 DI 컨테이너, AOP, ..
*김영한 | 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 강의를 참조한 글입니다. 오늘은 단순한 회원 관리 예제를 다뤄볼겁니다ㅎㅎ 드디어 뭔가 프로젝트다운 걸 하게되어 기뻐요 - (매우 간단한 거지만요) 그럼 바로 기릿 1. 일반적인 웹 애플리케이션 계층 구조 - 컨트롤러 : 웹 MVC의 컨트롤러 역할 *지난 글에서 다룸 - 서비스 : 핵심 비지니스 로직 구현 - DB(데이터베이스) - 리포지토리(저장소) : DB(데이터베이스)에 접근, 도메인 객체를 DB에 저장하고 관리 - 도메인 : 비지니스 도메인 객체 ex) 회원, 주문, 쿠폰 등과 같은 비지니스 도메인 객체를 주로 DB에 저장하여 관리함 2. 백엔드 개발 순서 2-1. 비지니스 요구사항 정리 및 설계 - 데이터 : 회..
*김영한 | 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 강의를 참조한 글입니다. 지난 시간에 다운받은 hello-spring 프로젝트에 대해 살펴보자. 'src - main - java - hellospring.hellospring - HelloSpringApplication'에서 코드를 실행시켜 보면, 다음과 같이 작동한다. TomcatWebServer에서 8080(http)를 확인할 수 있다. 웹브라우저에서 localhost:8080 을 입력하면, 다음과 같은 페이지가 뜬다. (만약 '사이트에 연결할 수 없음'페이지가 뜬다면 무언가 잘못된 것이다.) 에러 페이지지만, 정상적으로 작동한 것이다! 우린 아직 아무것도 작성하지 않았기에, 에러 페이지가 뜬 것이다. 웹 개발 방..
*김영한 | 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 강의를 참조한 글입니다. 1. 프로그램 설치 - JAVA 11, INtelliJ 프로젝트를 시작하기에 앞서, 두 개의 프로그램을 설치해주어야 한다. 1-1. JAVA 11 https://jdk.java.net/java-se-ri/11 Java Platform, Standard Edition 11 Reference Implementations Java Platform, Standard Edition 11 Reference Implementations The official Reference Implementation for Java SE 11 (JSR 384) is based solely upon open-source c..