2013-08-24 3 views
0

У меня есть два стола, человек и страна.Непонятные о типе отношения к использованию

Страна - это таблица со всеми странами, например. «Сингапур», «Америка». В то время как человек таблица со всеми пользователями, сохраняя их имена, и страна проживания и т.д.

В таблице базы данных выглядит следующим образом:

person 
person_id int PK 
name varchar(20) 
country_id int FK 

country 
country_id int PK 
country varchar(20) 

Я пытаюсь придумать диаграммы классов, которая выглядит например: Тем не менее, я не понимаю, какую связь я должен указать для переменной Country внутри класса Person.

@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

Вы имеете в виду класс человека должен иметь простой атрибут, представляющий pk страны? –

Смежные вопросы