我正在使用spring,h2和liquibase的hibernate,我试图通过这个博客文章的例子为我的实体创建一个自定义的String id生成器但是我收到一个错误:Caused by: org.hibernate.id.IdentifierGenerationException: Unknown integral data type for ids : java.lang.String
这是我的SequenceStyleGenerator代码:
public class CTCIDGenerator extends SequenceStyleGenerator {
@Override
public Serializable generate(SessionImplementor session, Object obj) {
if (obj instanceof Identifiable) {
Identifiable identifiable = (Identifiable) obj;
Serializable id = identifiable.getId();
if (id != null) {
return id;
}
}
return "CTC"+super.generate(session, obj);
}
}
Run Code Online (Sandbox Code Playgroud)
我的实体代码:
@Entity
@Table(name = "contact")
public class Contact implements Serializable, Identifiable<String> {
private static final long serialVersionUID = 1L;
@Id
@GenericGenerator(
name …Run Code Online (Sandbox Code Playgroud)