JPA(4)

김성수·2022년 11월 30일
0

SEB_BE

목록 보기
18/31

Spring Data JPA

Spring Data 패밀리(Spring Data JPA, Spring Data JDBC) 기술 중 하나로써, JPA 기반의 데이터 액세스 기술을 좀 더 쉽게 사용할 수 있게 해준다.

JPA vsvHibernate ORM vs Spring Data JPA

  • JPA
    • JPA는 엔터프라이즈 Java 애플리케이션에서 관계형 데이터베이스를 사용하기 위해 정해 놓은 표준 스펙(사양 또는 명세, Specification)이다.
  • Hibernate ORM
    • Hibernate ORM은 JPA라는 표준 스펙을 구현한 구현체이다.
  • Spring Data JPA
    • JPA 스펙을 구현한 구현체의 API(일반적으로 Hibernate ORM)를 조금 더 쉽게 사용할 수 있도록 해주는 모듈이다.

JPA에서의 리포지토리 인터페이스 구현

  • JpaRepository 인터페이스를 상속받아서 구현한다.
  • CrudRepository를 상속받아도 되지만, JPA에 특화된 기능들이 JpaRepository에 더 많이 포함되어있다.
  • JpaRepository를 상속하면 CrudRepository 기능을 포함한 JPA에 특화된 확장 기능들을 사용할 수 있다.

Optinal 클래스의 isPresent() / ifPresent()

  • isPresent()

    • boolean형
    • 기능은* != null 과 거의 똑같다.
    • 값이 null이 아니면 true, 값이 null이면 false
  • ifPresent()

    • void, 즉 반환 타입이 없다.
    • 기능은if(* != null) {~~} 과 거의 똑같ㅌㄷ아.
    • 즉, 값이 null이 아니면 실행, 값이 null이면 실행하지 않는다.
profile
쌩수 Git >> https://github.com/SsangSoo?tab=repositories

0개의 댓글