Jpa аннотации - PullRequest
       8

Jpa аннотации

2 голосов
/ 29 марта 2012

Допустим ли следующий код:

@Entity
@Embeddable

public class UserProfile {

@Id
private String name;
private String pass;
..

}

Могу ли я использовать обе аннотации одновременно?

Ответы [ 4 ]

4 голосов
/ 29 марта 2012

Почему всегда должны быть люди, которые, получив указание не нажимать кнопку, сделают это просто, чтобы посмотреть, что происходит?Embeddable - это тип, также как Entity, и его не следует использовать вместе, поскольку по определению Embeddable не может иметь Id.

2 голосов
/ 29 марта 2012

нет, вот здесь http://www.objectdb.com//api/java/jpa как это сделать

Другое дело, идентификатор генерируется автоматически, но да, вы можете изменить, как хотите;)

0 голосов
/ 29 марта 2012

Хорошо, мы тут все путаем.

Сущность - это класс java, для экземпляров которого требуется постоянство в БД в виде одной таблицы на сущность, строки на экземпляр.

Другие экземпляры других классов могут быть объектами со своими собственными таблицами и связанными с «один ко многим», «многими ко многим» и такими аннотациями, или они могут быть «встроены» непосредственно в ту же таблицу другой сущности. Это наиболее полезно, когда у вас есть сложные ключи, и вам нужны отдельные классы для определения первичных ключей.

Итак, либо у вас есть встраиваемый класс, экземпляры которого будут сохранены в другой сущности, либо у вас есть сущность, которая будет сохранена в своей собственной таблице.

0 голосов
/ 29 марта 2012

Нет.Встраиваемые объекты предназначены для встраивания в сущности.Они используются для реализации шаблона композиции.

...