JPA-объект без идентификатора

У меня есть база данных со следующей структурой:

CREATE TABLE entity (
    id SERIAL,
    name VARCHAR(255),
    PRIMARY KEY (id)
);

CREATE TABLE entity_property (
    entity_id SERIAL,
    name VARCHAR(255),
    value TEXT
);

Когда я пытаюсь создать класс EntityProperty

@Entity
@Table(name="entity_property")
public class EntityProperty {

    private String name;
    private String value;

    @Column(name="name")
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    @Column(name="value", nullable=true, length=255)
    public String getValue() {
        return value;
    }
    public void setValue(String value) {
        this.value = value;
    }
}

, я получаю следующее исключение:

org.hibernate.AnnotationException: No identifier specified for entity: package.EntityProperty

Я знаю, что JPA объекты должны иметь первичный ключ, но я не могу изменить схему базы данных по причинам, не зависящим от меня. Можно ли создать объекты JPA (Hibernate), которые будут работать с такой схемой базы данных?

48
задан lloiacono 8 February 2018 в 10:56
поделиться