[Spring]-JPA란 무엇인가?

Mini_me·2022년 1월 29일
1

공부 [Spring]

목록 보기
13/27

김영한의 자바 ORM 표준 JPA 프로그래밍을 기반으로 이해한 내용을 정리하였습니다.

JPA란 무엇인가?

💡 자바진영의 ORM 기술 표준이다 .
자바 애플리케이션과 JDBC 사이에서 동작한다.


🤫 그러면 ORM은 또 뭐야?

객체와 관계형 데이터베이스를 매핑한다는 뜻이다.

ORM 프레임 워크를 사용하면 객체를 데이터 베이스에 저장할 때, INSERT SQL을 직접 작성하지 않고

객체를 자바 컬렉션에 저장하는 것처럼 ORM 프레임 워크에 저장한다.

jpa.persist(member); 
//memberDAO에서 member을 저장

ORM은 SQL을 개발자 대신 생성 → 데베에 전달해주는 역할 + 패러다임의 불일치 문제들도 해결해준다.


그래서 JPA라는 것은 뭔데?

💡 자바 ORM 기술에 대한 API 표준 명세이다. = > 쉽게 이야기 해서 인터페이스를 모아둔 것이다.


뭔지 감은 잡겟어 근데 이걸 왜 사용해야돼?

생산성

jpa.persist(member); 
//memberDAO에서 member을 저장

위의 코드처럼 JPA를 사용하면 자바 컬렉션에 객체 저장하듯

JPA에게 저장할 객체를 전달하면 된다.

우리가 JDBC를 쓸 때 작성했던 INSERT SQL을 작성하고 JDBC APi를 사용하는 과정은 JPA가 대신 처리해준다.

유지보수

개발자가 직접 작성해야했던 SQL과 JDBC API 코드를 JPA가 대신 처리해줌

→ 유지보수해야하는 코드수가 줄어든다.

패러다임의 불일치 해결

이에 관해서는 이후에 정리할 예정

성능

JPA는 애플리케이션과 데이터 베이스 사이에서 동작하므로 최적화 관점에서 시도해볼수 있는 것들이 많다.

0개의 댓글