Как отобразить строку в последовательность БД в Hibernate
В значительной степени это сказано в названии. У меня есть класс, который выглядит примерно так:
@Entity
@Table(name="FOO")
public class Foo {
private String theId;
@Id
@Column(name = "FOO_ID")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "fooIdSeq")
@SequenceGenerator(name = "fooIdSeq", sequenceName = "SQ_FOO_ID", allocationSize = 10)
public String getTheId() { return theId; }
public String setTheId(String theId) { this.theId = theId; }
}
Используя Oracle 11g,FOO_ID
столбецVARCHAR2
, но последовательностьSQ_FOO_ID
даетNUMBER
, База данных, очевидно, довольна этим, но приложение должно иметь возможность поддерживать нечисловые идентификаторы, которые могли быть вставлены в этот столбец вне приложения.
Учитывая код выше, я получаюorg.hibernate.id.IdentifierGenerationException: Unknown integral data type for ids : java.lang.String
, Есть ли способ сделать это отображение?
Использование Hibernate 3.6.