JPA аннотации и таблицы SQL - PullRequest
0 голосов
/ 01 марта 2011

У меня просто быстрый вопрос.Если бы у меня был SQL-скрипт, подобный следующему:

create table person(
    phoneNumber int
    name varchar(100) not null
    primary key(phoneNumber, name)
);

Как бы я настроил класс сущностей для этого в Java с использованием аннотаций JPA?

У меня пока есть это:

@Entity
public class Person {


    @Column(name="phoneNumber")
    public int phoneNumber;


    @Column(name="name" length=255)
    public String name;


}

Ответы [ 2 ]

2 голосов
/ 01 марта 2011
  • вам понадобится @Table("person") в классе
  • вам потребуется @IdClass или @EmbeddableId, чтобы указать первичный ключ. Проверьте документацию тех, как именно этого добиться. @IdClass немного проще.
0 голосов
/ 01 марта 2011

Взгляните на это:

http://download.oracle.com/docs/cd/B32110_01/web.1013/b28221/cmp30cfg001.htm

По сути, у вас есть составной первичный ключ.В итоге вы получите класс MemberOFPK, который инкапсулирует поля первичного ключа, и тогда ваш класс MemberOf будет иметь либо EmbeddedID, либо два класса @ID в зависимости от того, делаете ли вы класс первичного ключа встраиваемым или нет.

...