Courses/JPA

· Courses/JPA
본 게시글은 김영한님의 [자바 ORM 표준 JPA 프로그래밍 - 기본편]을 수강하며 작성한 글입니다. 1. 객체와 테이블 매핑 1) 엔티티 매핑 소개 객체와 테이블 매핑 : @Entity, @Table 필드와 컬럼 매핑 : @Column 기본 키 매핑 : @Id 연관관계 매핑 : @ManyToOne, @JoinColumn 2) @Entity @Entity가 붙은 클래스는 JPA가 관리하는 엔티티이다. JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 어노테이션을 필수로 붙여야 한다. 주의 사항 1. 기본 생성자 필수 (파라미터가 없는 public 또는 protected 생성자) public Member() {} // 기본 생성자 문제는 다음과 같이 생성자를 하나 이상 만들면 자바는 기본 생성자를 ..
· Courses/JPA
본 게시글은 김영한님의 [자바 ORM 표준 JPA 프로그래밍 - 기본편]을 수강하며 작성한 글입니다. 1. 영속성 컨텍스트 1 1) JPA에서 가장 중요한 2가지 객체와 관계형 데이터베이스 매핑하기(Object Relational Mapping) 영속성 컨텍스트 2) 앤티티 매니저 팩토리와 앤티티 매니저 앤티티 매니저 팩토리를 통해 클라이언트의 요청이 올 때마다 앤티티 매니저를 생성하고 내부적으로 DB 커넥션을 사용해서 DB에 접근한다. 3) 영속성 컨텍스트 JPA를 이해하는데 가장 중요한 용어이다. 엔티티를 영구 저장하는 환경이라는 뜻이다. EntityManager.persist(entity); persist는 사실 DB에 저장하는 것이 아니라 Entity를 영속성 컨텍스트에 저장한다는 뜻이다. 영속성..
· Courses/JPA
본 게시글은 김영한님의 [자바 ORM 표준 JPA 프로그래밍 - 기본편]을 수강하며 작성한 글입니다. 1. Hello JPA - 프로젝트 생성 IntelliJ 프로젝트 생성을 통해 Maven 기반 프로젝트를 생성한다. 1) Maven 설정 groubId : jpa-basic artifactId : ex1-hello-jpa version : 1.0.0 2) 라이브러리 추가 4.0.0 jpa-basic ex1-hello-jpa 1.0-SNAPSHOT 8 8 UTF-8 org.hibernate hibernate-entitymanager 5.3.10.Final com.h2database h2 2.2.222 s H2database 버전은 PC에 다운받은 버전과 같아야 한다. 3) JPA 설정하기 - persist..
· Courses/JPA
본 게시글은 김영한님의 [자바 ORM 표준 JPA 프로그래밍 - 기본편]을 수강하며 작성한 글입니다. 1. SQL 중심적인 개발의 문제점 1) 무한 반복, 지루한 코드 객체에 새 필드를 추가하게 될 경우 쿼리문을 전부 수정해야 한다. 예를 들어 Member 클래스와 이와 관련된 쿼리문이 존재한다. 만약에 객체에 tel이라는 필드가 새로 추가된다면 이와 연관된 모든 쿼리문을 수정해야 한다. 2. 패러다임의 불일치 객체 vs 관계형 데이터베이스 보통 객체를 관계형 데이터 베이스에 저장한다. 이 과정에서 객체를 SQL로 변환해야 한다. 즉 SQL Mapper 역할을 개발자가 수행한다. 객체와 관계형 데이터베이스의 차이 1. 상속 SQL을 통해 테이블에 저장하는 과정 객체를 분해한다. INSERT INTO **..
jyjyjy25
'Courses/JPA' 카테고리의 글 목록