[인프런] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB/섹션 6. 스프링 DB 접근 기술
-
스프링 데이터 JPA[인프런] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB/섹션 6. 스프링 DB 접근 기술 2023. 4. 1. 02:13
* 인프런 김영한님의 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 강의를 듣고 작성한 내용입니다. (강의 링크) 스프링 데이터 JPA 스프링 부트와 JPA만 사용해도 개발 생산성이 정말 많이 증가하고, 개발해야할 코드도 확연히 줄어듭니다. 여기에 스프링 데이터 JPA를 사용하면, 기존의 한계를 넘어 마치 마법처럼, 리포지토리에 구현 클래스 없이 인터페이스 만으로 개발을 완료할 수 있습니다. 그리고 반복 개발해온 기본 CRUD 기능도 스프링 데이터 JPA가 모두 제공합니다. 스프링 부트와 JPA라는 기반 위에, 스프링 데이터 JPA라는 환상적인 프레임워크를 더하면 개발이 정말 즐거워집니다. 지금까지 조금이라도 단순하고 반복이라 생각했던 개발 코드들이 확연하게 줄어듭니다. 따라서..
-
JPA[인프런] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB/섹션 6. 스프링 DB 접근 기술 2023. 4. 1. 01:52
* 인프런 김영한님의 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 강의를 듣고 작성한 내용입니다. (강의 링크) Jdbc → JdbcTemplate 중복되는 코드 확 줄었으나 SQL을 개발자가 직접 작성해야 한다는 단점은 그대로 남아있었음. JPA JPA는 기존의 반복 코드는 물론이고, 기본적인 SQL도 JPA가 직접 만들어서 실행해준다. JPA를 사용하면, SQL과 데이터 중심의 설계에서 객체 중심의 설계로 패러다임을 전환을 할 수 있다. JPA를 사용하면 개발 생산성을 크게 높일 수 있다. JPA는 자바 진영의 표준 인터페이스이고 구현은 여러 업체(hibernate 등)가 제공 JPA(자바 퍼시스턴스 API) vs mybatis(마이바티스): 세계적으로는 JPA를 훨씬 많..
-
스프링 통합 테스트 / 스프링 JdbcTemplate[인프런] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB/섹션 6. 스프링 DB 접근 기술 2023. 3. 31. 11:46
* 인프런 김영한님의 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 강의를 듣고 작성한 내용입니다. (강의 링크) 스프링 통합 테스트 테스트도 DB까지 연결해서 동작하는 통합 테스트 진행하기 지금까지의 테스트 코드 → 스프링과 관련이 없는 순수한 자바 코드만 테스트했던 것 지금부터는 스프링과 엮어서 테스트하기 MemberServiceIntegrationTest.java - 회원가입 이미 존재하는 회원입니다 에러 → 테스트 전 DB 내용 모두 지우기 실무에서는 운영DB가 아니라 테스트 전용 DB를 따로 구축함! @Transactional 주석처리 하고 돌려보기 DB에 테스트한 내용 그대로 남아있게 됨 → 다음 테스트 때 다시 이미 존재하는 회원이라 오류 뜸 테스트는 계속 반복할 ..
-
H2 데이터베이스 설치 / 순수 Jdbc[인프런] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB/섹션 6. 스프링 DB 접근 기술 2023. 3. 25. 13:08
* 인프런 김영한님의 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 강의를 듣고 작성한 내용입니다. (강의 링크) 이전까지의 방식 메모리에 저장을 했다가 서버가 내려가면 메모리에 있던 것이 모두 사라짐 실무에서는 모두 데이터베이스에 저장해서 관리 스프링 데이터 엑세스 H2 데이터베이스 설치: 교육용으로 좋은 단순한 데이터베이스 순수 Jdbc: 데이터베이스 SQL 활용해서 애플리케이션 서버와 DB 연결할 때 필요한 기술 → Jdbc 스프링 통합 테스트 스프링 JdbcTemplate: 순수 Jdbc로 개발이 어려워서 중복 제거한 JdbcTemplate 제공 SQL 편리하게 날릴 수 있음 JPA: JPA라는 기술이 DB에 등록, 수정, 삭제, 조회 쿼리 모두 날려주는 것 객체를 바로..