Создание последовательности вручную в BerkeleyDB JE - PullRequest
0 голосов
/ 23 января 2012

Я хочу создать последовательность в BerkeleyDB, чтобы я мог работать вручную, но я не знаю, как это сделать.Я хотел бы иметь что-то похожее на объект последовательности SQL.Я нашел класс в документации API, но неясно, как его создать.

Любая помощь очень ценится!

1 Ответ

1 голос
/ 24 января 2012

Код ниже работает отлично:

@Test
public void testSequenceCreation() throws ClassNotFoundException {
    EnvironmentConfig econf = EnvironmentConfig.DEFAULT.setAllowCreate(true);
    Environment env = new Environment(envHome, econf);

    StoreConfig sconf = StoreConfig.DEFAULT.setAllowCreate(true);
    EntityStore store = new EntityStore(env, "TestStore", sconf);

    store.setPrimaryConfig(FakeEntity.class, 
            DatabaseConfig.DEFAULT.setAllowCreate(true));
    store.setSequenceConfig("testSequence", SequenceConfig.DEFAULT.setAllowCreate(true));

    Sequence seq = store.getSequence("testSequence");
    Assert.assertEquals(0, seq.get(null, 1));
    Assert.assertEquals(1, seq.get(null, 1));
    Assert.assertEquals(2, seq.get(null, 1));

    store.sync();

    seq.close();
    store.close();
    env.close();        
}

Все, что мне нужно было сделать, это установить конфигурацию и последовательность была создана.

...