2012-01-23 10 views
0

BerkeleyDB에서 시퀀스를 만들고 싶습니다. 수동으로 조작 할 수는 있지만이 작업을 수행하는 방법을 모르겠습니다. 나는 SQL 시퀀스 객체와 비슷한 것을 갖고 싶다. API 문서에서 클래스를 찾았지만이를 만드는 방법이 불분명합니다.BerkeleyDB에서 수동으로 시퀀스 만들기 JE

도움을 주시면 대단히 감사하겠습니다.

답변

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

내가해야 할 일을했을 모든 구성을 설정하고 순서가 만들어졌다.