Spring/스프링 부트와 AWS로 혼자 구현하는 웹 서비스 3

CHAPTER 03 스프링 부트에서 JPA로 데이터베이스 다뤄보자

관계형 데이터베이스 : 어떻게 데이터를 저장할지에 초점 객체지향 프로그래밍 언어 : 메시지를 기반으로 기능과 속성을 한 곳에서 관리하는 기술 패러다임 불일치 관계형 데이터베이스와 객체지향 프로그래밍 언어의 패러다임이 서로 다른데, 객체를 데이터베이스에 저장하려고 하니 여러 문제가 발생 JPA - 서로 지향하는 바가 다른 2개 영역(객체지향 프로그래밍 언어와 관계형 데이터베이스)을 중간에서 패러다임 일치를 시켜주기 위한 기술 - 더는 SQL에 종속적인 개발을 하지 않아도 된다. - JPA는 인터페이스로서 자바 표준명세서 - 인터페이스인 JPA를 사용하기 위해서는 구현체(Hibernate, Eclipse Link, ...)가 필요 - Spring에서 JPA를 사용할 때는 이 구현체들을 직접 다루진 않는다. ..

CHAPTER 02 스프링 부트에서 테스트 코드를 작성하자

2.1 테스트 코드 소개 TDD - 테스트가 주도하는 개발 - 테스트 코드를 먼저 작성하는 것부터 시작 레드 그린 사이클 - Red : 항상 실패하는 테스트를 먼저 작성하고 - Green : 테스트가 통과하는 프로덕션 코드를 작성하고 - Refactor : 테스트가 통과하면 프로덕션 코드를 리팩토링합니다. 단위 테스트 - TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성하는 것 - TDD와 달리 테스트 코드를 꼭 먼저 작성해야 하는 것도 아니고, - 리팩토링도 포함되지 않는다 - 순수하게 테스트 코드만 작성하는 것 테스트 코드를 작성함으로써 얻는 이점 - 단위 테스트는 개발단계 초기에 문제를 발견하게 도와줍니다. - 단위 테스트는 개발자가 나중에 코드를 리팩토링하거나 라이브러리 업그레이드 등에서 ..

CHAPTER 01 인텔리제이로 스프링 부트 시작하기

build.gradle // 자바 개발에 가장 기초적인 설정 // 플러그인 의존성 관리를 위한 설정 // 4개의 플러그인은 자바와 스프링 부트를 사용하기 위해서는 필수 플러그인들이니 항상 추가하면 됩니다. plugins { id 'java' // springBootVersion 전역변수를 생성하고 그 값을 '2.1.7.RELEASE'로 하겠다는 의미 // 즉, spring-boot-gradle-plugin라는 스프링 부트 그레이들 플러그인의 2.1.7.RELEASE를 의존성으로 받겠다는 의미 id 'org.springframework.boot' version '2.7.17' // io.spring.dependency-management 플러그인은 스프링 부트의 의존성들을 관리해 주는 플러그인이라 꼭 추가..