0

hbm 파일의 두 태그가 일대일 및 일대일 및 일 대 일별로 고유 = "true"로 어떻게 다른가요? 방금 ​​배운 쌍방향 매핑을 얻으려면 두 hbm files.cant에 하나씩 태그를 사용해야한다는 것을 배웠습니다. 최대 절전 모드에서 양방향 동작을 얻으려면 양쪽에 unique = true를 사용하여 많은 것을 넣었습니다 (둘 다 hbm)? 이 link에서1 대 1 대 다 대다 대 true = true의

, 내가

<!-- In One-to-one we cannot specify the foreign key column 
     that has to be filled up 
     <one-to-one name="person" class="PersonOTO_B" cascade="all" 
     constrained="true"> </one-to-one> 
    --> 

    <many-to-one name="person" column="P_ID" unique="true" 
     not-null="true" lazy="false" /> 

위의 이유 유효한 하나입니다 발견? 당신이 때 응용 프로그램이 시작하여 SQL 스키마를 생성하기 위해 최대 절전 모드를 사용하지 않는 경우 때

감사 Jayendra는

+0

http://stackoverflow.com/questions/2452987/hibernate-why-use-many-to-one-to-represent-a-one-to-one –

답변

0

unique = true 아무것도 의미하지 않는다. Hibernate는 값의 유일성, 즉 순수한 데이터베이스 함수를 강제하지 않는다.

Hibernate를 사용하여 데이터베이스 스키마를 생성하는 경우 unique=true을 설정 한 모든 속성에 Unique 제약 조건을 적용하지만 이미 존재하는 데이터베이스에서 최대 절전 모드를 가리키고 해당 데이터베이스의 스키마 만 유효성을 검사하는 경우 , Hibernate는 유일 컨 스트레인 트가 존재하는지 체크하지 않을 것이다.

이 (내 머리 위로부터)입니다 적용되는 다른 속성

insertable, updateablenullable

당신이 Hibernate에서 다른 종류의 관계를 만드는 방법에 대한 안내를 원하는 경우에 나는 편리한 가이드를 썼다을 here을 찾을 수 있습니다. 내가 가진 주석 예제를 .cfg 파일로 변환하거나 주석을 사용하기 만하면됩니다.