как установить дату в качестве первичного ключа в сущности с Hibernate - PullRequest
0 голосов
/ 04 мая 2018

У меня есть объект с 3 первичными ключами. Третий тип - это тип даты, и когда я пытаюсь вставить данные в объект, я сталкиваюсь с ошибкой -> org.hibernate.id.IdentifierGenerationException: неизвестный целочисленный тип данных для идентификаторов: java.util.Date

Я нашел решение для строки, но не для типа даты.

и это моя сущность:

import javax.persistence.*;
import java.util.Date;
import java.util.List;

@Entity
public class PartyContactMech extends BaseEntity {

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long partyId;

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long contactMechPurposeId;

@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Date fromDate;

@Column
private Date usedSince;

@OneToMany(cascade = CascadeType.ALL)
private List<ContactMech> ContactMeches;

@OneToOne(cascade = CascadeType.ALL)
private ContactMechPurpose contactMechPurpose;

public Long getPartyId() {
    return partyId;
}

public void setPartyId(Long partyId) {
    this.partyId = partyId;
}

public Long getContactMechPurposeId() {
    return contactMechPurposeId;
}

public void setContactMechPurposeId(Long contactMechPurposeId) {
    this.contactMechPurposeId = contactMechPurposeId;
}

public Date getFromDate() {
    return fromDate;
}

public void setFromDate(Date fromDate) {
    this.fromDate = fromDate;
}

public Date getUsedSince() {
    return usedSince;
}

public void setUsedSince(Date usedSince) {
    this.usedSince = usedSince;
}

public List<ContactMech> getContactMeches() {
    return ContactMeches;
}

public void setContactMeches(List<ContactMech> contactMeches) {
    ContactMeches = contactMeches;
}

public ContactMechPurpose getContactMechPurpose() {
    return contactMechPurpose;
}

public void setContactMechPurpose(ContactMechPurpose contactMechPurpose)                              
{
    this.contactMechPurpose = contactMechPurpose;
    }
}

любой может помочь, спасибо

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Попробуйте вот так

@Id
@GeneratedValue(strategy = AUTO)
@Column
private long id;
0 голосов
/ 04 мая 2018

Попробуйте удалить @GeneratedValue(strategy = GenerationType.AUTO) из даты. GenerationType.AUTO - для поля автоинкремента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...