
2023.01.22 - [Spring/Study] - [스프링 입문] 3. 회원 관리 예제 - 백엔드 개발 [스프링 입문] 3. 회원 관리 예제 - 백엔드 개발 비즈니스 요구사항 정리 데이터: 회원ID, 이름 기능: 회원 등록, 조회 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) 일반적인 웹 애플리케이션 계층 구조 일반적인 웹 애플리케이션은 lgana1021.tistory.com 스프링 빈을 등록하는 2가지 방법 컴포넌트 스캔과 자동 의존관계 설정 자바 코드로 직접 스프링 빈 등록하기 컴포넌트 스캔과 자동 의존관계 설정 지금까지 만든 Member 서비스, 리포지토리, 객체 등에 화면을 붙여보자. 화면을 붙이려면 Member 컨트롤러와 뷰 템플릿이 필요하다. Member 컨트롤러는 Member 서비..

비즈니스 요구사항 정리 데이터: 회원ID, 이름 기능: 회원 등록, 조회 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) 일반적인 웹 애플리케이션 계층 구조 일반적인 웹 애플리케이션은 컨트롤러, 서비스, 리포지토리, 도메인 객체, DB로 구성된다. 컨트롤러: 웹 MVC나 API의 컨트롤러 역할 도메인: 주로 DB에 저장/관리되는 비즈니스 도메인 객체 (ex. 회원, 주문, 쿠폰 등) 서비스: 비즈니스 도메인 객체를 이용해 핵심 비즈니스 로직 구현 (ex. 중복 회원가입 방지) 리포지토리: DB에 접근, 도메인 객체를 DB에 저장하고 관리 클래스 의존관계 아직 데이터 저장소가 선정되지 않아서, 우선 인터페이스로 구현 클래스를 변경할 수 있도록 설계한다. 데이터 저장소는 RDB, NoSQL 등등 다양한..

라이브러리 살펴보기 Gradle은 의존관계가 있는 라이브러리를 함께 다운로드한다. 인텔리제이에서 Gradle 아이콘을 누르면 라이브러리를 확인할 수 있다. 스프링 부트 라이브러리 정리 spring-boot-starter-web spring-boot-starter-tomcat: 톰캣 (웹 서버) spring-webmvc: 스프링 웹 MVC spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진 (View) spring-boot-starter (공통): 스프링 부트 + 스프링 코어 + 로깅 spring-boot spring-core spring-boot-starter-logging logback, slf4j 테스트 라이브러리 정리 spring-boot-starter-test junit:..

사전 준비물 - java 11 버전 설치 - IntelliJ 설치 자바 11 설치하기 나는 기존에 자바 16 버전을 사용하고 있었기 때문에, 11 버전을 새롭게 설치했다. (MacOS, brew 이용) 1) brew 업데이트 brew update 2) adoptopenjdk/openjdk 추가 brew tap adoptopenjdk/openjdk 3) jdk11 버전 검색 brew search openjdk@11 ==> Formulae openjdk@11 openjdk openjdk@17 openjdk@8 ==> Casks adoptopenjdk/openjdk/adoptopenjdk11 adoptopenjdk/openjdk/adoptopenjdk11-jre adoptopenjdk/openjdk/adopt..