Goal 1. JPA / Hibernate / Spring Data Jpa 의 관계 2. Spring Data Jpa를 이용하여 관계형 데이터베이스를 객체지향적으로 관리하는 방법 3. JPA의 더티 체킹을 이용하여 Update쿼리 없이 테이블 수정 4. JPA Auditing을 이용하여 등록/수정 시간을 자동화하는 방법 JPA 란? 객체지향적으로 프로그래밍을 하고 SQL에 종속적인 개발을 하지 않도록 중간에서 패러다임 일치를 시켜주기 위한 기술 기존의 개발 문제점 RDB(관계형 데이터베이스가) 중심이 되면서 코드가 SQL 중심이 되어감 각 테이블마다 기본적인 CRUD SQL 매번 생성해야하는 번거러움 관계형 데이터베이스와 객체지향 프로그래밍 언어의 패러다임의 불일치 문제 예제1. 프로젝트에 Spring ..
TDD
Goal : 스프링부트 환경에서 테스트 코드를 작성해본다. 단위테스트 란? TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성하는 것을 이야기한다. TDD와는 다른 이야기! 기존의 개발 진행 방식 코드 작성 프로그램(Tomcat) 실행 Postman과 같은 api 테스트 도구로 http요청 요청 결과를 system.out.println()으로 눈으로 검증 결과가 다르면 다시 프로그램(Tomcat)을 중지하고 코드 수정 -> 테스트 코드가 없다보니 수정된 코드를 확인할 수 없어 2~5의 단계를 반복해야하는 문제 -> 톰캣 재시작은 많은 시간 소요 -> 눈으로 확인하는 수동 검증 필요 -> 기존에 잘 되던 기능의 문제 (사이드 이펙트) 백문이 불여일타. 코드로 개념을 이해해보자! 예제1. Hello C..