JPA
-
JPA를 사용해야 하는 이유JPA 2022. 3. 27. 02:54
JPA를 왜 사용해야하는가? 그 이유를 5가지 정도 알아보자 1. SQL 중심적인 개발에서 객체 중심으로 개발 JPA를 사용하면 마치 자바 컬렉션을 사용하는 것 처럼 데이터를 다룰 수 있다. 2. 생산성 JPA와 CRUD 저장 //Kotlin em.persist(member) 조회 val member = em.find(memberId) 수정 member.name = "변경할 이름" : 수정 시 엔티티의 프로퍼티를 변경하고 어딘가 등록(?) 해줘야 할 것 같은데 JPA는 마치 자바 컬렉션에 데이터를 넣었다 뺐다 하는 것처럼 할 수 있게 해주기 때문에해당 객체 프로퍼티면 변경하면 된다. (어떤 원리로 되는 지는 뒤에 자세히) 삭제 em.remove(member) => 굉장히 간단하다. 3. 유지보수 기존의 ..
-
객체와 관계형 데이터베이스의 차이JPA 2022. 3. 24. 22:48
객체와 관계형 데이터베이스의 차이는 크게 4가지 정도 정리할 수 있다. 1. 상속, 2. 연관관계 3. 객체 그래프 탐색, 4. 비교하기 1. 상속 관계형 DB에서 객체의 상속 관계와 그나마 비슷한 것은 Table의 슈퍼타입 서브타입 논리모델이다. Problem] 객체를 분해해서 저장하기 때문에 슈퍼타입 테이블과 서브타입 테이블 JOIN 결과에 값을 채워넣고 반환 후 조회하는 과정을 거쳐야 한다. 자바 컬렉션에 저장한다면? -> list.add(객체) 조회한다면? -> list.get(객체) 객체는 부모타입으로 조회 후 다형성을 활용하여 사용할 수도 있다. //Kotlin val item1: Child = list.get(childId) val item2: Parent = list.get(childId)..