0

BerkeleyDBで手動で操作できるシーケンスを作成したいのですが、その方法がわかりません。SQLシーケンスオブジェクトに似たものが欲しいのですが。APIドキュメントでクラスを見つけましたが、作成方法が不明です。

どんな助けでも大歓迎です!

4

1 に答える 1

1

以下のコードは正常に機能します。

@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();        
}

構成を設定するだけで、シーケンスが作成されました。

于 2012-01-24T09:18:56.170 に答える