写点什么

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:321977
用户头像

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

关注

评论

发布
暂无评论
发现更多内容

Flink 实践教程-进阶(10):自定义聚合函数(UDAF)

腾讯云大数据

flink sql 流计算 Oceanus

Java中的异常

javaadu

Java 面试题 Java面试题

Flink 实践教程-进阶(9):自定义表值函数(UDTF)

腾讯云大数据

flink sql 流计算 Oceanus

Redis集群架构剖析(1):认识cluster

非晓为骁

redis redis cluster 分布式,

22.04 LTS爆料现场 - UKUI 3.1实操界面曝光,简约却不简单!

优麒麟

Linux 开源 操作系统 优麒麟 UKUI

架构训练营模块五

刘帅

浏览器中的页面

Tristan

Java基础重要面试题(一)

逆锋起笔

java面试 java基础 3月月更

StarRocks 2.1 新版本特性介绍

StarRocks

数据库 大数据 StarRocks

Web 键盘输入法应用开发指南 (8) —— 模拟事件

天择

JavaScript 键盘 输入法 3月月更

To程序员:要写出好代码,你需要懂点儿“底层思维”

博文视点Broadview

2022年软考时间是怎么安排的,有哪些工种可以选择?如何备考?

Ethereal

什么是数据中心架构?

Ethereal

开源|携程机票BDD-UI测试框架Flybirds

liang chen

开源 自动化测试框架 BDD UI自动化

算法训练营毕业总结

白开水又一杯

算法训练营

基于迁移学习的非侵入式负荷识别

白日梦

遵循Promises/A+规范,手把手带你实现Promise源码(核心篇)

战场小包

JavaScript 前端 Promise 3月月更

如何基于实时声纹变声实现对声音的“克隆”

声网

人工智能 音视频 声纹识别

camtasia studio2022更新内容介绍

茶色酒

硬件工程师实用工具网站

不脱发的程序猿

嵌入式 智能硬件 电路设计 硬件工程师 实用工具网站

智慧停车场-车牌识别自动计费系统

DS小龙哥

车牌识别 3月月更

阿里巴巴发布最佳实践 | 阿里巴巴DevOps实践指南

阿里云云效

云计算 阿里云 DevOps 云原生 迭代管理

多场景推进 服务网格在联通的落地实践(上)

百度大脑

我们不太可能一直存在着失控的人生,我们要做的是,让拥有自控力的时间长一点,让失控的日子短一点。

叶小鍵

微博系统中”微博评论“的高性能高可用计算架构

孙强

架构师实战营

Linux下玩转nginx系列(三)---nginx日志配置文件说明

anyRTC开发者

nginx Linux 音视频 WebRTC 服务器

redis持久化机制

喀拉峻

网络安全

LabVIEW设计自定义指示灯和按钮控件

不脱发的程序猿

LabVIEW 自定义控件方法

Python 中的函数式编程三大法宝:map、filter、reduce

踏雪痕

Python map reduce 3月程序媛福利 3月月更

面试突击30:线程池是如何执行的?拒绝策略有哪些?

王磊

java面试

Nginx反向代理(一)

神农写代码

Db4Objects发布Db4o 7.0,支持透明激活_Java_朱永光_InfoQ精选文章