我有两张桌子,人和国家。
国家/地区是包含所有国家/地区的表格,例如“新加坡”,“美国”。人是一张包含所有用户的桌子,存放他们的姓名和居住国等等。
数据库表如下所示:
person
person_id int PK
name varchar(20)
country_id int FK
country
country_id int PK
country varchar(20)
我试图想出一个如下所示的类图:但是,我不清楚我应该为Person类中的变量Country指明什么样的关系。
@Entity
@Table(name=person)
class Person{
@Id
@Column(name="person_id")
@GeneratedValue(strategy=GeneratedType.IDENTITY)
private int personId;
@Column(name="name")
private String name;
@ ?
private Country country;
// Accessor and Mutator
}
@Entity
@Table(name=country)
private Country{
@Id
@Column(name=country_id)
@GeneratedValue(strategy=GeneratedType.IDENTITY)
private int countryId;
@Column(name="country")
private String country;
// Accessor and Mutator
}
答案 0 :(得分:0)
人员应包含Country的外键。
这创造了一个人属于一个(住宅)国家的关系,而一个国家可以(当然)有更多属于它的人。这称为多对一关系(如果从国家/地区查看)。