추계 할인
CodeGym University
학습
강좌
과제
설문조사 및 퀴즈
게임
도움말
학습 재촉 스케줄
커뮤니티
사용자
포럼
채팅
기사
성공 사례
활동
리뷰
구독
옅은 색 테마
레슨
리뷰
회사 소개
시작
학습 시작
지금 학습을 시작하십시오
탐구 맵
레슨
레벨 15
엔티티 계층 작업
SQL & Hibernate
레벨 15,
레슨 0
보존 문제 오늘 우리는 Hibernate 기능을 사용하여 클래스 계층 구조를 데이터베이스에 저장하는 새롭고 매우 흥미로운 계획을 갖게 될 것입니다. 클래스 계층 구조는 상속 관계에 의해 서로 관련된 클래스 집합입니다. 데이터베이스에 저장하려는 세 가지 클래스가 있다고 상상해 보십시오. class User {
전체 클래스 계층 구조에 대한 단일 테이블
SQL & Hibernate
레벨 15,
레슨 1
설명 클래스 계층 구조를 저장하는 다음 접근 방식은 계층 구조의 모든 클래스를 단일 테이블에 저장하는 것 입니다 . 이 전략을 단일 테이블 이라고 합니다 . 예를 들면 다음과 같습니다. CREATE TABLE user_ employee_client {
판별기
SQL & Hibernate
레벨 15,
레슨 2
설명 이전 학습에서 Hibernate가 Entity 클래스의 이름을 저장하기 위해 특별한 DTYPE VARCHAR 열을 사용하는 것을 보았습니다. 이러한 열을 discriminator 라고 합니다 . 데이터베이스의 주어진 행에 대해 생성할 클래스를 명확하게 결정하는 데 사용됩니다. @DiscriminatorColumn 주석을 사용하여 이 열을 조작할 수 있습니다 . 예: @DiscriminatorColumn(name="имя_
조인된 테이블
SQL & Hibernate
레벨 15,
레슨 3
설명 데이터베이스에 클래스 계층 구조를 저장하는 또 다른 전략은 Joined Table입니다. 이에 대한 특별한 주석이 있습니다. @Inheritance(strategy = InheritanceType.JOINED) 우리 수업의 예: @Inheritance(strategy = InheritanceType.JOINED)
클래스별 테이블
SQL & Hibernate
레벨 15,
레슨 4
5.1 설명 마지막으로 마지막 전략은 클래스별 테이블입니다. 이는 각 클래스에 대해 별도의 테이블이 사용됨을 의미합니다. 어떤 의미에서 이것은 업데이트된 형식에서만 동일한 MappedSuperClass입니다. 먼저 주석을 사용해야 합니다. @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
계층 구조 보존 전략 선택
SQL & Hibernate
레벨 15,
레슨 5
설명 위의 각 전략과 기술에는 고유한 장점과 단점이 있습니다. 특정 전략을 선택하기 위한 일반적인 권장 사항은 다음과 같습니다. UNION 기반 TABLE_PER_CLASS 전략 이 전략은 다형성 쿼리 및 연결이 필요하지 않은 경우에 선택하는 것이 가장 좋습니다. 거의 수행하지 않는 경우(또는 전혀 수행하지 않는 경우) "사용자 사용자에서 사용자 선택". User를 참조하는 Entity 클래스가 없는 경우 이것이 최선의 옵션입
Please enable JavaScript to continue using this application.