
비즈니스 요구사항 정리 데이터 : 회원 ID, 이름 기능 : 회원 등록, 조회 아직 데이터 저장소가 선정되지 않았다고 가정 이 강의의 목표는 복잡한 비즈니스를 하는 것이 아니라 단순한 예제를 가지고 스프링 생태계 전반적으로 어떤 식으로 개발이 이루어지고 동작하는지 알아보는 것이다. 따라서 단순한 비즈니스로 설정하여 진행해보기로 한다. # 일반적인 웹 어플리케이션 계층 구조 컨트롤러 : 웹 MVC의 컨트롤러 역할 서비스 : 핵심 비즈니스 로직 구현 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인 : 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터 베이스에 저장하고 관리됨 # 클래스 의존관계 데이터 저장소는 RDB, NoSQL 등등 다양한 저장소를 고민 중인 ..

스프링 웹 개발 방법 정적 컨텐츠 ; 파일을 그대로 웹브라우저에 내려주는 것 MVC와 템플릿 엔진 ; 서버에서 HTML을 프로그래밍해서 동적으로 내리는 것 API ; JSON이라는 데이터 구조 포맷으로 클라이언트에게 데이터를 전달하는 방식 정적 컨텐츠 # 정적 컨텐츠 기능 resources/static/hello-static.html 정적 컨텐츠 입니다. > hello-static.html 파일 생성 후 프로젝트 실행 localhost:8080/hello-static.html 접속 시 위와 같은 화면이 출력된다. # 정적 컨텐츠 동작 환경 > 웹 브라우저에서 localhost:8080/hello-static.html 접속 > 내장 톰켓 서버가 요청을 받아 Spring에게 전달 > Spring이 컨트롤러 ..

라이브러리 살펴보기 # 의존관계 **Gradle은 의존관계가 있는 라이브러리를 함께 다운로드 한다. 예전에는 웹 서버를 직접 서버에 설치하고 자바 코드를 밀어넣는 식으로 웹 서버와 개발 라이브러리가 완전히 분리되어 있었음 > 요즘에는 소스 라이브러리에서 웹서버를 내장(임베디드)하고 있기 때문에 자바 메인 메소드만 실행해도 웹 서버가 뜸 라이브러리 하나를 빌드해서 웹 서버에 올리면 끝나는 간단한 방식으로 개발하는 추세이다. # 라이브러리 - 스프링 부트 라이브러리 spring-boot-starter-web spring-boot-starter-tomcat: 톰캣 (웹 서버) spring-webmvc: 스프링 웹 MVC spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진 (View) ..