
1. 데이터베이스 스키마 자동 생성의 장점 DDL을 애플리케이션 실행 시점에서 자동으로 실행 테이블 중심에서 객체 중심으로 전환이 가능하다. 데이터베이스 방언을 활용하여 데이터베이스에 맞는 적절한 DDL을 생성한다. 이렇게 생성한 DDL은 개발 장비에서만 사용한다. 이렇게 생성된 DDL은 운영서버에서는 사용하지 않는다. ( 필요시 다듬은 후 사용 ) 2. 데이터베이스 스키마 자동 생성의 속성 ( persistence.xml ) [1] create : 기존 테이블을 삭제한 후 다시 생성한다. ( DROP + CREATE ) [2] create-drop : create와 같으나 종료시점에서 테이블을 DROP한다. [3] update : 변경된 내용만 반영한다. ( 운영 DB에서는 사용하면 안된다. ) + 단..
1. 엔티티 매핑의 종류 [1] 객체와 테이블 매핑 ( ex. @Entity , @Table ) [2] 필드와 컬럼 매핑 ( ex. @Column ) [3] 기본 키 매핑 ( ex. @Id ) [4] 연관관계 매핑 ( ex. @ManyToOne , @JoinColumn ) 2. 객체와 테이블 매핑 @Entity가 붙은 클래스는 JPA가 관리하게 된다. ( 이러한 클래스를 엔티티라고 부른다. ) JPA를 사용해서 테이블과 매핑할 클래스는 @Entity를 반드시 사용해야 한다. ( *필수* ) - 이때 기본 생성자를 반드시 생성해야 한다. - 또한 final 클래스 / 필드, enum, interface, inner 클래스는 사용이 불가능하다. 3. @Entity 속성 [1] name 속성 - JPA에서 사..
1. JPA에서 가장 중요한 2가지 1 ) 객체와 관계형 데이터 베이스 메핑하기 2 ) 영속성 컨텍스트 (

1. 프로젝트 구성 2. pom.xml 더보기 4.0.0 jpaBasic ex1-hello-jpa 1.0-SNAPSHOT 17 17 UTF-8 org.hibernate hibernate-entitymanager 5.3.10.Final com.h2database h2 2.1.214 javax.xml.bind jaxb-api 2.3.1 3. persistence.xml 더보기 4. JpaMain 클래스 더보기 package hello.jpa; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persis..
1. SQL 중심적인 개발의 문제점 비슷한 SQL문을 무한 반복해서 개발해야 된다. ( 지루한 코드 ) 작은 변화가 있으면, 쿼리나 VO/DTO부터 다 고쳐야 한다. SQL에 의존하는 개발을 하게 된다. 애플리케이션은 객체 지향적 언어로 개발을 하지만, SQL은 관계형 데이터 베이스이기에 패러다임의 불일치가 일어난다. + 객체 지향 프로그래밍은 추상화, 캡슐화, 정보은닉, 상속, 다형성 등 시스템의 복잡성을 제어할 수 있는 다양한 장치들을 제공하지만, 관계형 데이터 베이스에서는 제공하지 않는다. 2. 객체와 관계형 데이터 베이스의 차이 [1] 상속 - 객체 : 상속 관계 + 객체에서는 자바 컬렉션을 활용하여 쉽게 저장할 수 있다. ( ex. list.add(하위); ) + 객체에서는 조회 또한 쉽게 조회..