Использование @Entity в @IdClass в качестве @IdJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Использование @Entity в @IdClass в качестве @Id

Сообщение Anonymous »

У меня есть сущность, которая выглядит вот так

Код: Выделить всё

@Entity
@IdClass(AId.class)
class A {

@Id
private String userName

@Id
@NotNull
@JoinColumn(name = "location_id", referenceColumnName = "id", nullable=false, foreignKey = @ForeignKey(name = ...))
private Location location;

private String userInformation;
}
Класс Location выглядит следующим образом:

Код: Выделить всё

@Entity
class Location {

@NotNull
private Long id;

@NotNull
@Column(nullable = false}
private String name;
}
И еще у меня есть класс для определения идентификатора

Код: Выделить всё

class AId implements Serializable {
private Long locationId;
private String userName;
}
Теперь я произвожу некоторые манипуляции с объектом класса A и затем хочу его сохранить. Однако я получаю исключение, которое сообщает мне, что поле Location#name, не допускающее значения NULL, на которое ссылается объект A, имеет значение NULL. Я отладил его и убедился, что поле на самом деле не равно нулю. Тем не менее, я все еще понимаю это. В чем проблема? Местоположение, на которое ссылается A, уже сохранено в базе данных.

Подробнее здесь: https://stackoverflow.com/questions/792 ... lass-as-id
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»