BerkeleyDB-JE Hello World(使用BaseAPI)

在進一步介紹JE之前,我們先看個BaseAPI版的Hello World,這個例子演示了JE最一般的使用方法,打開環境和Database,持久化數據,查詢數據,關閉環境和Database。

/**
* 用BaseAPI保存和獲取數據
* @author mengyang
*
*/
public class HelloWorldByBaseAPI {

private File file = new File("C:/Users/mengyang/workspace/je");
private Environment env;
private Database database;

//建立環境
private void setUp(){

EnvironmentConfig envConfig = new EnvironmentConfig();
envConfig.setAllowCreate(true);
env = new Environment(file, envConfig);

DatabaseConfig dbConfig = new DatabaseConfig();
dbConfig.setAllowCreate(true);
database = env.openDatabase(null, "baseAPIDemo", dbConfig);
}

//保存數據
private void save(){
String key = "BaseAPI";
String value = "Hello World!";

try {
DatabaseEntry keyEntry = new DatabaseEntry(key.getBytes("utf-8"));//鍵
DatabaseEntry valueEntry = new DatabaseEntry(value.getBytes("utf-8"));//值
database.put(null, keyEntry, valueEntry);//保存鍵值對
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}

//檢索數據
private void get(){
String key = "BaseAPI";
String value;

try {
DatabaseEntry keyEntry = new DatabaseEntry(key.getBytes("utf-8"));//鍵
DatabaseEntry valueEntry = new DatabaseEntry();//空的值
if(database.get(null, keyEntry, valueEntry, LockMode.DEFAULT) == OperationStatus.SUCCESS){//根據鍵來查找
value = new String(valueEntry.getData(), "utf-8");//找到了對於的值
System.out.println("key:BaseAPI,value:"+value);
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}

//關閉環境
private void shutDown(){
database.close();
env.close();
}

/**
* @param args
*/
public static void main(String[] args) {
HelloWorldByBaseAPI myCase = new HelloWorldByBaseAPI();
myCase.setUp();
myCase.save();
myCase.get();
myCase.shutDown();
}

}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章