1、BerkeleyDB的Java相关Jar包下载
可以从如下地址中下载到最新的BerkeleyDB的Java依赖包:
http://www.oracle.com/us/products/database/berkeley-db/je/overview/index.html
2、 Java中BerkeleyDB的基本使用
在Java中BerekleyDB提供了丰富API,方便了对该数据库的操作,下面是一个创建BerkeleyDB的例子:
首先需要打开一个Database环境:
public void createDBEnvironment() {
if (myDBEnvironment != null) {
return;
}
try {
EnvironmentConfig config = new EnvironmentConfig();
config.setAllowCreate(true);// 如果不存在则创建一个
config.setReadOnly(false); // 以只读方式打开,默认为false
config.setTransactional(true); // 事务支持,如果为true,则表示当前环境支持事务处理,默认为false,不支持事务处理
myDBEnvironment = new Environment(new File(DB_ENVIRONMENT_ROOT),
config);
} catch (DatabaseException e) {
e.printStackTrace();
}
}
创建一个数据库:
public void createDB() {
// 打开一个数据库,数据库名为
// sampleDatabase,数据库的配置为dbConfig
if (myDB != null) {
return;
}
DatabaseConfig dbConfig = new DatabaseConfig();
dbConfig.setAllowCreate(true);
dbConfig.setSortedDuplicates(true);
try {
myDB = myDBEnvironment.openDatabase(null, "linkDatabase",
dbConfig);
} catch (DatabaseException e) {
e.printStackTrace();
}
}
关闭数据库:
public void closeDB() {
try {
if (myDB != null) {
myDB.close();
}
} catch (DatabaseException e) {
e.printStackTrace();
}
}
往数据库里写数据:
public void addURLToDB(String key, String url){
String akey = key;
String aData = url;
try {
DatabaseEntry theKey = new DatabaseEntry(akey.getBytes("gb2312"));
DatabaseEntry theDate = new DatabaseEntry(aData.getBytes("gb2312"));
myDB.put(null, theKey, theDate);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (DatabaseException e) {
e.printStackTrace();
}
}