odb
iteye_9601
这个作者很懒,什么都没留下…
展开
-
neodatis.odb 第一篇 存储对象的偏移地址
数据库文件存储对象的偏移地址 DB_HEADER_VERSION_POSITION is: 0DB_HEADER_DBID_POSITION is: 1DB_HEADER_NUMBER_OF_CLS_POSITION is: 33DB_HEADER_FIRST_CLS_OID is: 37DB_HEADER_LAST_CLOSE_STATUS_POSITION is: 45DB_HE...2008-04-27 07:18:00 · 124 阅读 · 0 评论 -
neodatis.odb 第二篇 一切都是比特
org.neodatis.odb.core.io.ByteArrayConverter 这个类的作用是 :Converts array of bytes into native objects and native objects into array of bytespublic class ByteArrayConverter { …… /** * bit 二进制位(或称比特) byt...2008-05-03 17:22:00 · 113 阅读 · 0 评论 -
neodatis.odb 第三篇 保存对象到文件的过程
保存对象的大致过程odb.store(object) =>LocalStrageEngine.internalStore(object)=>FileSystemInterface.writeLong(long i, boolean writeInTransaction, String label, int writeActionType) FileSystemInterface....2008-05-11 01:49:00 · 95 阅读 · 0 评论 -
neodatis.odb 第四篇 查询
Objects objs=odb.getObjects(Entity.class) =>ObjectReader.getObejcts(){A=CollectionQueryResultAction} =>ObjectReader.getObejctInfos() =>GenericQueryExecutor.executeFullScan()【A.Start():re...2008-05-17 03:44:00 · 80 阅读 · 0 评论 -
neodatis.odb 第五篇 保存
ODB odb = null; Sport soccer = new Sport("足球"); SimpleDateFormat format = new SimpleDateFormat("yyyy-mm-dd"); Player 亨利 = new Player("蒂埃里·亨利", format.parse("1977-8-17"), soccer); try { odb...2008-05-28 13:57:00 · 148 阅读 · 0 评论 -
neodatis.odb 第六篇 更新和删除
研究neoDatis odb 有一个月了。上周六晚上,对存储的研究基本结束。相对于db4o,odb的实现相对简单。这有利于代码研究。但odb的更新和删除动作的处理,就难以满意了。odb把更新对象作为一个新对象追加在文件结尾,删除对象则视为已删除,文件并不做删除和移动。这种处理方式很简单,无需将文件中间扣出去一段,然后再向前移动。但这么做的一个恶果是,如果我有30万数据要删除,然后再导入20万数...2008-06-02 13:28:00 · 97 阅读 · 0 评论 -
neodatis.odb 第七篇 学习odb日志1
odb研究日志 2008.5.2 开始分析源代码 ODB - ODBAdapter- LocalODB、RemoteODBClient、SameVMODBClientIStorageEngine- LocalStorageEngine MockStorageEngine、ServerStorageEngie StorageEngin...2008-08-05 00:49:00 · 104 阅读 · 0 评论 -
B- Tree
为了测试B-树,写了个测试程序。保存ERICHANOK这个字符数组,字符按照字母表排序。保存示意图: 附:1972年R.Bayer和E.M.McCreight提出了一种称之为B-树的多路平衡查找树。它适合在磁盘等直接存取设备上组织动态的查找表。 B-是一种多路搜索树(并不是二叉的):一个层数为m的b- tree 根结点的儿子数为[2, m]; 除根结点以...2009-05-24 01:07:48 · 153 阅读 · 0 评论