JPA

    [Inflearn] JPA - 영속성관리

    [Inflearn] JPA - 영속성관리

    김영한 강사님의 '자바 ORM 표준 JPA 프로그래밍-기본편' 강의 정리 2022.03.17~ 03.31 진행 강의를 듣고 개인적으로 정리한 글입니다. 코드와 그림 출처는 김영한 강사님께 있습니다. 문제 있을 시 알려주세요. 영속성 컨텍스트 JPA는 영속성 컨텍스트에 엔티티를 저장한다. 영속성 컨텍스트는 "엔티티를 영구 저장하는 환경" 이라는 뜻이다. 영속성 컨텍스트는 논리적인 개념이며 눈에 보이지 않는다. 영속성 컨텍스트 접근하기 엔티티 매니저를 통해서 영속성 컨텍스트에 접근한다. EntityManager.persist(entity);를 하면 엔티티를 영속화한다. (DB에 저장하는게 아님, 영속성 컨텍스트에 저장) 엔티티 매니저 팩토리와 엔티티 매니저 EntityManagerFactory를 통해서 고객..

    [Inflearn] JPA 시작하기 + JPQL이란?

    [Inflearn] JPA 시작하기 + JPQL이란?

    김영한 강사님의 '자바 ORM 표준 JPA 프로그래밍-기본편' 강의 정리 2022.03.17~03.31 진행 강의를 듣고 개인적으로 정리한 글입니다. 코드와 그림 출처는 김영한 강사님께 있습니다. 문제 있을 시 알려주세요. 프로젝트 생성 자바 8이상 (저는 11을 사용하였습니다) 빌드 툴은 Maven을 사용 InteliJ에서 Maven 프로젝트를 새로 생성합니다. 라이브러리 설정파일 pom.xml JPA 하이버네이트, 데이터베이스 드라이버 등 필요한 의존설정을 추가합니다. 자바 11을 사용했을 때 오류 해결방법 : pom.xml에 다음 코드를 추가 javax.xml.bind jaxb-api 2.3.0 JPA 설정하기 - persistence.xml JPA 설정 파일 /META-INF/persistence..

    [Inflearn] ORM, JPA란 무엇인가

    [Inflearn] ORM, JPA란 무엇인가

    김영한 강사님의 '자바 ORM 표준 JPA 프로그래밍-기본편' 강의 정리 2022.03.17~03.31 진행 강의를 듣고 개인적으로 정리한 글입니다. 코드와 그림 출처는 김영한 강사님께 있습니다. 문제 있을 시 알려주세요. JPA와 모던 자바 데이터 저장 기술 Java와 같은 객체지향 언어로 실무 개발을 할 때에는 주로 관계형 DB를 사용한다. 문제는 애플리케이션은 객체지향적으로 개발을 해야하는데, SQL을 계속 날려야 하기 때문에 SQL 중심적인 개발이 되는 것이다. 1. SQL 중심적인 개발의 문제점 SQL 중심적인 개발은 다음과 같은 문제가 있다. 무한반복, 지루한 코드 → SQL 매핑에 많은 시간소요(노가다) 객체 CRUD 코드에 필드가 추가 될 경우 SQL을 일일히 고쳐주어야 한다 → 유지보수성..