写点什么

Db4Objects 发布 Db4o 7.0,支持透明激活

  • 2007-11-26
  • 本文字数:1140 字

    阅读完需:约 4 分钟

最近, Db4Objects 公司发布了他们对象数据库产品db4o 的7.0 版。

db4o 被很多著名的企业所使用,如:波音公司、希捷公司、IBM 和 Intel 等。

作为一款成功的对象数据库产品,它具有如下特点:

  • 开源,基于 GPL 发布,也可以购买商业版本用于商业开发
  • 多平台支持,既支持 Java 平台也支持.NET 平台,对于.NET CF 和 Mono 也能很好的支持
  • 嵌入式引擎,和应用程序共同分发,也提供了 C/S 的模式让多个客户端访问同一数据源
  • 轻量级,运行文件只有 600K 左右
  • 创新的数据查询方式,使用原生查询(Native Query)可以语义化、类型安全的对数据进行查询

国内的 db4o 爱好者 Rosen Jiang 张黄瞩 Chris 在 IBM developerWork 中国上曾发表过《开源面向对象数据库 db4o 之旅》系列文章,讲述了在 Java 平台上如何使用 db4o。在 db4o 自带的教程中,可以学习到在.NET 上使用 db4o 也极其简单:

// accessDb4o
IObjectContainer db = Db4oFactory.OpenFile(Util.YapFileName);
try
{
// do something with db4o
}
finally
{
db.Close();
}

// storeFirstPilot
Pilot pilot1 = new Pilot(“Michael Schumacher”, 100);
db.Set(pilot1);

// retrieveAllPilotQBE
Pilot proto = new Pilot(null, 0);
IObjectSet result = db.Get(proto);

// deleteFirstPilotByName
IObjectSet result = db.Get(new Pilot(“Michael Schumacher”, 0));
Pilot found = (Pilot)result.Next();
db.Delete(found);

db4o 在国内也有一些运用实例。Rosen Jiang 的文章《实战 OpenLaszlo 与 db4o 》向大家介绍了一个 db4o 和 OpenLaszlo 结合实现 RIA 的案例。在一个名为“敏捷实验室”的开发团队中,他们使用 db4o 来开发他们内部开发框架中的离线缓存机制和服务端字典缓存机制。通过以上例子,我们可以看到合理运用 db4o,确实可以显著简化开发过程,Ted Neward 也有同感。目前,db4objects 公司和爱好者正在积极推进 db4o 运用于 Google Android 平台,以期让 db4o 成为 Android 上首选的数据库平台,更多信息可以访问他们的论坛

在最新发布的 7.0 版本中,带来了如下新特性和加强:

  • 透明激活(Transparent Activation,TA)
  • 性能提高
  • 错误处理机制的加强
  • 支持唯一约束
  • 多事务对象容器(Multi-Transactional-ObjectContainer ,MTOC)
  • 提交时回调(Commit-Time Callbacks)
  • 提供了和 OSGi 框架兼容的接口(OSGi 框架是一个 Java 中间件,能让软件作为动态组件进行结构化)

透明激活(Transparent Activation,TA)是 7.0 版本中最重要的新特性:

透明激活能自动的检测到那个对象会被应用程序所访问,因此只从磁盘上加载最小内容,这样就能让内存消耗更少,让性能显著提升。

目前,db4o 7.0 只发布了 Java 平台的 Beta 版本,.NET 版本已经被列入了十二月的开发计划,并有望在 2008 年第一季度发布。你可以通过这里下载所有的版本。

2007-11-26 07:322145
用户头像

发布了 254 篇内容, 共 62.2 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容
Db4Objects发布Db4o 7.0,支持透明激活_Java_朱永光_InfoQ精选文章