2011-06-11 73 views
0

我需要从Java读取BerkeleyDB文件。我可以从Java读取BerkeleyDB(非Java版本)文件吗?

Oracle拥有官方Java版BerkeleyDB,但似乎它使用了自己的不兼容的二进制文件格式。

我该怎么办?

+1

相关问题(仅限于“纯Java”):http://stackoverflow.com/questions/2873581/is-it-possible-to-access-a-bdb-from-pure-java – Thilo 2011-06-11 01:11:13

回答

0

Berkeley DB实际上可以以两种不同格式存储数据,具体取决于您是否选择使用SQL API。 SQL API是最近增加的,Berkeley DB历史上一直是一个关键/值数据库。

确实需要构建本地库并使用JNI,但是如果要访问由本机库创建的文件,则会出现这种情况。幸运的是,构建过程非常简单。

如果您是在Windows下编译,请参考the installation guide

对于Linux或其他* NIX,以后你有未解压的文件转到build_unix目录并执行下列操作之一:

  • 如果您正在使用的(标准)键/值接口:

../dist/configure --enable-java的前缀=在/ usr /本地/ DB

使安装

  • 如果您使用的是SQL API:

../dist/configure --enable-SQL --enable-JDBC前缀=在/ usr /本地/ DB

使安装

(很明显,您可以用您选择的安装位置替换--prefix)

欲了解更多信息,请参阅the docs page

希望能对你的项目有所帮助,祝你好运。