Berkeleydb 学习笔记[原创]
Berkeleydb主要使用key-value的方式.可以对实时instance进行存取,(对象级的存取!).同时也适合作为嵌入式DB使用.
一.建立Environment
1.建立EnvironmentConfig
2.通过EnvironmentConfig和envDir建立Environment实例
二.建立Database
1.建立Transation,也可能是null
2.建立DatabaseConfig
3.通过Transation,DatabaseConfig建立Database实例
三.使用Database
可以通过两种方式使用数据库
3.1 直接使用Database实例(put,get等方法)
DatabaseEntry作为put,get的参数,而DatabaseEntry中的setData(),getData()以byte的形式存入数据库.
但是存入的都必须显示转换成byte[]数组.
3.2 使用Map的方式(类StoredSortedMap)
3.2.1 建立Catalog(StoredClassCatalog)
3.2.2 建立Binding, 可以把所有implements了Serializable的类进行绑定(注意不能是内部类)
3.2.3 通过Database,Catalog和Binding建立map,通过map的put(Object)和get()来存取数据.
这种方式可以把实例串行化存取数据库.
四.提交及关闭数据库
如果Transation不为null,要显示提交Transation.commit();
先关闭Database,再关闭Environment.