나는이 HBM이 " HBM이 내 필요를 충족시키는 것입니까?최대 절전 모드 HBM의 서브 클래스
0
A
답변
2
<subclass>
접근 방식을 사용하려는 경우 then you'll need a discriminator입니다. 이는 hibernate allows mixing subclass strategies with that tag이기 때문에 발생합니다. 따라서 하나의 테이블에서 여러 유형의 엔티티를 가질 수 있으며 그 중 일부는 조인 조작을 수행하는 데 필요하며 다른 엔티티는 해당 기본 테이블에 저장된 모든 값을가집니다. 여기 조인을 필요로하는 CreditCardPayment
하고 있습니다 지불의 다른 유형이 간단 : 당신은 그러나이 가입하고 얻을 할 것입니다 최대 절전 모드 당신이 무슨 일을하는지에 해당 <joined-subclass>
을 지정할 수 있습니다
<class name="Payment" table="PAYMENT">
<id name="id" type="long" column="PAYMENT_ID">
<generator class="native"/>
</id>
<discriminator column="PAYMENT_TYPE" type="string"/>
<property name="amount" column="AMOUNT"/>
...
<subclass name="CreditCardPayment" discriminator-value="CREDIT">
<join table="CREDIT_PAYMENT">
<property name="creditCardType" column="CCTYPE"/>
...
</join>
</subclass>
<subclass name="CashPayment" discriminator-value="CASH">
...
</subclass>
<subclass name="ChequePayment" discriminator-value="CHEQUE">
...
</subclass>
</class>
discriminator가없는 각 클래스의 요소. 은<subclass>
및 <joined-subclass>
요소를 같은 클래스에 혼합 할 수 없습니다. 여기
당신이 판별을 필요로하지 않는 테이블 당 서브 클래스 구현을 가지고, 그것은 구체적인 클래스 구현 당 하나의 테이블을 사용하도록 강제,하지만 당신은뿐만 아니라 Payment
클래스의 부모 개체를 관리 할 수 있습니다.
<class name="Payment" table="PAYMENT">
<id name="id" type="long" column="PAYMENT_ID">
<generator class="native"/>
</id>
<property name="amount" column="AMOUNT"/>
...
<joined-subclass name="CreditCardPayment" table="CREDIT_PAYMENT">
<key column="PAYMENT_ID"/>
<property name="creditCardType" column="CCTYPE"/>
...
</joined-subclass>
<joined-subclass name="CashPayment" table="CASH_PAYMENT">
<key column="PAYMENT_ID"/>
...
</joined-subclass>
<joined-subclass name="ChequePayment" table="CHEQUE_PAYMENT">
<key column="PAYMENT_ID"/>
...
</joined-subclass>
</class>
관련 문제
- 1. 최대 절전 모드 서브 클래스는
- 2. 최대 절전 모드 : 최대 절전 모드 재사용 클래스
- 3. 최대 절전 모드 구성 요소
- 4. 최대 절전 모드 세대 클래스
- 5. 최대 절전 모드 - 공식
- 6. 최대 절전 모드 예외
- 7. 봄과 최대 절전 모드
- 8. 강제 절전 나는 다음 최대 절전 모드 클래스 한
- 9. 최대 절전 모드 상속 문제
- 10. 최대 절전 모드 지속성
- 11. 최대 절전 모드 다형성
- 12. 최대 절전 모드 객체
- 13. 최대 절전 모드 기준
- 14. 최대 절전 모드 주석과
- 15. 최대 절전 모드 : 여러 테이블
- 16. 최적화 최대 절전 모드
- 17. 클래스 별 최대 절전 모드 NamingStrategy
- 18. 최대 절전 모드 로깅 POJO 클래스 세대
- 19. 최대 절전 모드 도구 생성 클래스
- 20. 최대 절전 모드 중복 클래스 이름 예외
- 21. 최대 절전 모드 도구 Eclipse 클래스 경로
- 22. 최대 절전 모드 구성 요소의 내부 클래스
- 23. 최대 절전 모드 쿼리 클래스 캐스트 예외
- 24. 최대 절전 모드 매핑
- 25. 최대 절전 모드 DiscriminatorColumn.Type
- 26. 최대 절전 모드 설정
- 27. 최대 절전 모드 BeanCreationException
- 28. 최대 절전 모드 문제
- 29. 최대 절전 모드 AnnotationException
- 30. 도메인 추상화와 최대 절전 모드
천만 @neila있어 ;-) –
자전거 타는 사람, 또 다른 질문 : 내가 태그에 정의 된 슈퍼 클래스의 추가 코드가 <메타 속성을 = "클래스 코드">, 나도 같은 얻을 하위 클래스의 코드! 어떻게 슈퍼 전용 일 수 있습니까? – junior
'meta' 태그를 서브 클래스에 지정할 수 있습니다. 그냥 –