사람들을위한 테이블 하나, 회사 용 테이블 하나, 휴대폰 용 세 번째 테이블이있는 주소록 응용 프로그램을 만들려고합니다. 전화 테이블은 사람과 회사의 데이터가 어디서 왔는지 나타내는 필드가 있습니다. 나는 아주 쉽게 사람과 해당 전화를 얻을 수있는 일반 SQL에서두 열에 최대 절전 모드 컬렉션 만들기
public class Person {
private Integer id;
private String firstName;
private String lastName;
private Collection<Phone> phones;
// ...
}
public class Company {
private Integer id;
private String name;
private Collection<Phone> phones;
// ...
}
public class Phone {
private Integer id;
private String number;
// ...
}
: 나는 매우 간단한 표현이다 상응하는 자바 클래스를 생성 한
CREATE TABLE `Person` {
`id` int(11) NOT NULL auto_increment,
`firstName` varchar(80) NOT NULL,
`lastName` varchar(80) NOT NULL
}
CREATE TABLE `Company` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(80) NOT NULL
}
CREATE TABLE `ContactPhone` (
`id` int(11) NOT NULL auto_increment,
`contactType` char(1) NOT NULL, -- either 'P' or 'C'
`contactId` int(11) NOT NULL, -- the id of the Person or Company
`number` varchar(40) NOT NULL
}
: 이제 이러한 간단한 테이블이 있다고 가정하자 . Person과 Phone 사이 및 Company와 Phone 사이의 매핑을 일반 hibernate (주석 없음)를 사용하여 작성해야하지만 작동시킬 수는 없습니다. 단방향인지 또는 양방향인지 여부는 확실하지 않습니다. 설명서를 검색했지만 도움이되는 내용을 찾지 못했습니다. 누군가?
회사와 전화의 관계는 무엇입니까? – Cherian
회사는 단방향으로 전화 모음을 가질 수 있습니다. 전화에서 기업으로의 '거꾸로'연결은 없습니다. – rmarimon