전체 글

스터디/2023_스프링부트

[study] 스프링 DB 2편 - 6. 스프링 데이터 JPA

김영한님의 스프링 DB 2편 - 데이터 접근 활용 기술을 듣고 정리한 내용입니다. 스프링 데이터 JPA 주요 기능 스프링 데이터 JPA는 JPA를 편리하게 사용할 수 있도록 도와주는 라이브러리이다. 수많은 편리한 기능을 제공하지만 가장 대표적인 기능은 다음과 같다. 공통 인터페이스 기능 쿼리 메서드 기능 JpaRepository 인터페이스를 통해서 기본적인 CRUD 기능 제공한다. 공통화 가능한 기능이 거의 모두 포함되어 있다. CrudRepository 에서 fineOne() findById() 로 변경되었다 JpaRepository 사용법 public interface ItemRepository extends JpaRepository { } JpaRepository 인터페이스를 인터페이스 상속 받고,..

스터디/2023_스프링부트

[study] 스프링 DB 2편 - 5. JPA

김영한님의 스프링 DB 2편 - 데이터 접근 활용 기술을 듣고 정리한 내용입니다. SQL 중심적인 개발의 문제점 객체와 RDBMS의 차이 1. 상속 2. 연관관계 3. 데이터타입 4. 데이터 식별 방법 JPA 소개 객체답게 모델링 Java Persistence API Object-relational mapping(객체 관계 매핑) - 객체는 객체대로 설계 - 관계형 데이터베이스는 관계형 데이터베이스대로 설계 - ORM 프레임워크가 중간에서 매핑 - 대중적인 언어에는 대부분 ORM 기술이 존재 - JPA 1.0(JSR 220) 2006년 : 초기 버전. 복합 키와 연관관계 기능이 부족 - JPA 2.0(JSR 317) 2009년 : 대부분의 ORM 기능을 포함, JPA Criteria 추가 - JPA 2...

스터디/2023_스프링부트

[study] 스프링 DB 2편 - 4. MyBatis

김영한님의 스프링 DB 2편 - 데이터 접근 활용 기술을 듣고 정리한 내용입니다. MyBatis SQLMapper 이다. SQL을 XML에 편리하게 작성할 수 있고 동적 쿼리를 매우 편리하게 작성할 수 있다 JdbcTemplate - SQL 여러줄 String sql = "update item " + "set item_name=:itemName, price=:price, quantity=:quantity " + "where id=:id"; MyBatis - SQL 여러줄 update item set item_name=#{itemName}, price=#{price}, quantity=#{quantity} where id = #{id} JdbcTemplate - 동적 쿼리 String sql = "sele..