문제

"사용자"클래스가 하나 있고 "유형의"프로필 속성 "이 있다고 가정 해 봅시다. 스키마를 생성하고 데이터베이스에서 두 테이블을 만들기 위해 매핑을 구성하려면 어떻게해야합니까?

도움이 되었습니까?

해결책

<many-to-one/>

다른 팁

제쳐두고, 당신이 최대 절전 모드 매핑을 스크립팅하는 훌륭한 팬이 아니라면 (나는 그렇지 않음) 다른 몇 가지 옵션이 있습니다.

캐슬 activerecord 하나의 대안입니다 - 그것은 nhibernate 위에있는 레이어로, 그 중에서도 클래스와 속성에 속성을 사용하여 관계를 선언 할 수 있습니다.

그리고 유창한 nhibernate 또 다른 것입니다 - 수업과 관계를 프로그래밍 방식으로 설정할 수 있습니다.

둘 다 매핑 XML을 손으로 작성하는 것보다 큰 개선입니다!

매핑에 대해 묻는 경우 아래 그림과 같이 조인을 사용할 수 있습니다. 참고 : 앱에 맞게 몇 가지 추가 속성을 추가해야합니다.

   <?xml version="1.0" encoding="utf-8" ?>
   <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"    namespace="MyNamespace" assembly="MyAssembly"    default-lazy="true">  
   <class name="User" table="User">    
   <id name="Id" column="user_id" unsaved-value="0">      
   <generator class="native" />    
   </id>    
   <property name="Profile" column="profile" />  
   </class>
   </hibernate-mapping>

   <?xml version="1.0" encoding="utf-8" ?>
   <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"    namespace="MyNamespace" assembly="MyAssembly"    default-lazy="true">  
   <class name="Profile" table="Profile">    
   <id name="Id" column="profile_id" unsaved-value="0">      
   <generator class="native" />    
   </id>    
   <property name="Profile" column="profile" />    
   </class>
   </hibernate-mapping>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top