객체지향 프로그래밍에서 관계형DB를 사용함에 있어 아래와 같은 차이가 있다.상속 : 객체지향 (O), DB (X)연관관계 : 객체 (자유로움) , DB (복잡함)객체다운 모델링 : 객체 (O), DB (X)엔티티 신뢰 문제 : 객체(O), DB(X)또한 모든 객체를 미
persistence라는 클래스에서 ‘META-INF/persistence.xml’를 통해 설정 정보 조회 > EntityManagerFactory라는 클래스를 만들고, 필요시마다 EntityManager를 찍어내서 돌린다. 사용하는 클래스에서 위처럼 작성 EntityManagerFactory 는 어플리케이션 로딩 시 1번만 생성 실제 하나의 동작을 수행...
1. 영속성 컨텍스트란, jpa에서 가장 중요한 용어로, “엔티티를 영구 저장하는 환경”이라는 뜻이다. EntityManager.persist(”entity”); 를 통해 생성해서 접근할 수 있다. 눈에 보이지 않는 논리적인 개념 엔티티의 생명주기 비영속 ( new / transient ) : 영속성 컨텍스트와 전형 관계가 없는 새로운 상태 ...
1. 플러시란, 커밋 시 영속성 컨텍스트에 있는 내용을 변경감지한 후에 DB에 반영하는 것 동작하는 과정 : 수정된 엔티티 쓰기 지연 SQL 저장소에 등록 -> 쓰기 지연 SQL 저장소의 쿼리를 DB에 전송(등록, 수정, 삭제 쿼리) 2. 사용 em.flush() : 직접호출 COMMIT 전에 DB적용을 원할 시 사용 (근데 사용할 일 거의 없음)...
DDL을 애플리케이션 실행 시점에 자동 생성테이블 중심 > 객체 중심DB 방언을 활용해서 DB에 맞는 적절한 DDL 생성이렇게 생성된 DDL은 개발 장비에만 사용생선된 DDL은 운영서버에서는 사용하지 않거나, 적절히 다듬은 후 사용속성hibernate.hbm2ddl.a
@Id 기본적인 기본키 직접 생성 시 사용@GeneratedValue기본키를 자동으로 생성 예 : startegy = GenerationType.AUTO)IDENTITY : 기본키 생성을 DB에 위임주로 MySQL, PostgreSQL, SQL Server, DB2에
객체의 참조와 테이블의 외래 키를 매핑방향 : 단방향, 양방향다중성(Multiplicity) : 다대일(N:1), 일대다(1:N), 다대다(N:M), 일대일(1:1)연관관계의 주인(Owner) : 객체 양방향 연관관계는 관리하는 주인이 필요쉽게 예제로 설명회원과 팀이