Java 设置@GenericGenerator的allocationSize

Java 设置@GenericGenerator的allocationSize,java,hibernate,jpa,orm,Java,Hibernate,Jpa,Orm,我以前有一个@SequenceGenerator的代码,参数为allocationSize=1 我需要用一个自定义的@GenericGenerator覆盖SequenceGenerator。但是,我看不到在自定义GenericGenerator策略类中指定我的allocationSize参数的方法。我能做什么?我已经得到了答案,是的,我可以创建一个CustomGenerator,然后使用@GenericGenerator,在该CustomGenerator中使用如下代码: public clas

我以前有一个
@SequenceGenerator
的代码,参数为
allocationSize=1


我需要用一个自定义的
@GenericGenerator
覆盖
SequenceGenerator
。但是,我看不到在自定义
GenericGenerator
策略类中指定我的
allocationSize
参数的方法。我能做什么?

我已经得到了答案,是的,我可以创建一个CustomGenerator,然后使用@GenericGenerator,在该CustomGenerator中使用如下代码:

public class UseExistingOrGenerateIdGenerator extends SequenceHiLoGenerator {
    @Override
    public Serializable generate(SessionImplementor session, Object object) throws HibernateException {
        Serializable id = session.getEntityPersister(null, object).getClassMetadata().getIdentifier(object, session);
        return id != null ? id : super.generate(session, object);
    }

    @Override
    public void configure(Type type, Properties params, Dialect dialect) throws MappingException {

        params.put(org.hibernate.id.SequenceGenerator.SEQUENCE, "HIBERNATE_SEQUENCE");

        params.put(SequenceHiLoGenerator.MAX_LO, String.valueOf("49"));
        super.configure(type, params, dialect);
    }

}