[JPA] ORM이란, JPA 사용 이유?
2023. 1. 10. 20:15
프로그래밍/JPA
ORM이란? ORM이란 객체와 DB의 테이블이 매핑을 이루는 것을 말함 (Java 진영에 국한된 기술이 아님) 즉, 객체가 테이블이 되도록 매핑 시켜주는 것 ORM을 이용하면 SQL Query가 아닌 직관적인 코드(메서드)로서 데이터를 조작할 수 있음 예를들어, User 테이블의 데이터를 출력하기 위해서 MySQL에서는 SELECT * FROM user; 라는 query를 실행해야 하지만, ORM을 사용하면 User 테이블과 매핑된 객체를 user라 할 때, user.findAll() 라는 메서드 호출로 데이터 조회가 가능 query를 직접 작성하지 않고 메서드 호출만으로 query가 수행되다 보니, ORM을 사용하면 생산성이 매우 높아짐 그러나 query가 복잡해지면 ORM으로 표현하는데 한계가 있고,..
[JPA] JPA란?
2022. 9. 28. 20:21
프로그래밍/JPA
JPA란? Java Persistence API의 약자로 자바의 ORM(Object Realational Mapping) 표준 스펙을 정의 JPA의 스펙은 자바의 객체와 데이터베이스를 어떻게 매핑하고 동작해야 하는지를 정의하고 있음 하이버네이트(Hibernate) ORM Framework 중 하나로 'JPA 프로바이더'라고도 부름 JPA의 실제 구현체 중 하나이며, 현재 JPA 구현체 중 가장 많이 사용됨 영속성 컨텍스트(Persistence Context) 영속성 컨텍스트는 JPA가 관리하는 엔티티 객체의 집합 엔티티 객체가 영속 컨텍스트에 들어오게 되면 JPA는 엔티티 객체의 매핑 정보를 가지고 DB에 반영함 엔티티 객체가 영속 컨텍스트에 들어오게 되어 관리 대상이 되면 그 객체를 영속 객체라고 부름..