JPA란
-
JPA(Java Persistence API)동작 방식SPRING/JPA 2021. 10. 10. 22:57
JPA에서 가장 중요한 2가지 1. 객체와 관계형 데이터베이스 매핑하기 2. 영속성 컨텍스트 엔티티 매니저 팩토리와 엔티티 매니저 - 엔티티(Entity) : 데이터베이스의 테이블에 대응하는 클래스라고 생각하면 됩니다. - 엔티티 매니저 : 영속성 컨텍스트에 접근하여 엔티티에 대한 데이터베이스 작업을 제공합니다. 내부적으로 데이터베이스 커넥션을 사용해서 데이터베이스에 접근합니다. - 엔티니 매니저 팩토리 : 엔티티 매니저 인스턴스를 관리하는 주체입니다. 애플리케이션 실행 시 한 개만 만들어지며 자용자로부터 요청이 오면 엔티티 매니저 팩토리로부터 엔티티 매니저를 생성합니다. @Entity가 붙은 클래스는 JPA에서 관리합니다. @Id: 데이터베이스 PK와 매핑 엔티티 생명주기 엔티티의 생명주기 • 비영속 ..
-
JPA(Java Persistence API)의 시작SPRING/JPA 2021. 10. 10. 20:21
JPA란? JPA는 자바 ORM 기술에 대한 API 표준이다. ORM이란 'Object Relational Mapping'의 약자로 객체와 관계형 데이터베이스를 매핑해주는 것을 말합니다. 그렇다면 왜? ORM 기술이 나왔는지 알아보겠습니다. 상품 데이터를 관리하는 Item 클래스가 있다고 가정하고, 상품 데이터를 관계형 데이터베이스에서 관리하기 위해 우리는 SQL문을 사용합니다. 문제 1) SQL 중심 개발의 문제 개발자가 CRUD문을 작성해서 객체를 관계형 데이터베이스에 넣어주고 가져오는 작업을 합니다.( 자바 객체를 SQL을 통해 데이터베이스에 관리하게 하고, 데이터베이스에 저장된 데이터를 자바 애플리케이션에서 사용하려면 SQL을 통해 다시 자바 객체로 변환) - '개발자가 직접 SQL을 매핑하는 역..