두 클래스 사이에 One-to-One
관계를 정의하는 방법은 무엇입니까? 나는 어딘가에서 개념적으로 잘못 될 것이라고 생각한다. 나는 무엇인지 모르지만 그것은 그렇다. 일대일 매핑의 개념입니다. 매핑을 설명하십시오
Country
int c_id
String name_c
PM
int c_id
String name_pm
이제 하나 개의 국가, 하나의 PM이있을 수 있으며, 오후는 한 나라를 속할 수 있습니다 :
은 우리가
Country
및
PM
라는 두 개의 클래스가있는 가정하자. 매핑 파일에서이 작업을 어떻게 수행합니까?
<class name="pojo.Country" table="country">
<id name="c_id">
<generator class="increment" />
</id>
<property name="name_c" />
<one-to-one class="pojo.PM" name="name_pm" />
</class>
<class name="pojo.PM" table="pm">
<id name="c_id">
<generator class="increment" />
</id>
<property name="name_pm" />
</class>
을하지만 노쇠 매핑은 실행 time.It가 재산 name_pm
가 Country
클래스 안에서 발견 할 수 없다고하는 동안 예외를 생산하는 것보다 아무것도하지 않는다 :
나는이 시도되었다! 하지만 Country
클래스 안에서 검색합니까? 오히려 PM
클래스 내에서 검색해야합니다.
또한 두 개의 클래스간에 내 one-to-one
매핑을 수행하는 데 도움이됩니다. 나는 이것을 얼마 동안 시도해왔다.
자바 코드 :
나라
public class Country {
private int c_id;
private String name_c;
public int getC_id() {
return c_id;
}
public void setC_id(int c_id) {
this.c_id = c_id;
}
public String getName_c() {
return name_c;
}
public void setName_c(String name_c) {
this.name_c = name_c;
}
}
오후
public class PM {
private int c_id;
private String name_pm;
public int getC_id() {
return c_id;
}
public void setC_id(int c_id) {
this.c_id = c_id;
}
public String getName_pm() {
return name_pm;
}
public void setName_pm(String name_pm) {
this.name_pm = name_pm;
}
}
을 PM을 가질 필요는 없습니다. 일대일 매핑에서 ** 한 집합의 모든 ** 요소는 다른 집합의 고유 한 요소와 연결됩니다. –