内容简介:在机器重启后,能重新读入以前数据的应用大部分后端都使用了一个数据库,而数据库大部分以数据表结构组织数据,而应用程序部分使用的是面向对象结构,这种不兼容导致出现了一堆Beans、DAL、ORM层。 十年前开发人员...
在机器重启后,能重新读入以前数据的应用大部分后端都使用了一个数据库,而数据库大部分以数据表结构组织数据,而应用程序部分使用的是面向对象结构,这种不兼容导致出现了一堆Beans、DAL、ORM层。
十年前开发人员想统一应用软件与数据库之间的开发方式,90%的软件功能与数据都不在首页,他们希望软件关闭重启后完全恢复之前的用户操作状态,整个用户界面是从数据库中Select()出来,而不是new一个页面对象,再绑定几个Bean,大部分这类软件都是专用商业软件,没有大规模流行,但也有好的开源产品进行尝试。
Db4o是其中一个,这个产品有近十年没重要更新了,是一个非常好帮助新用户学习编写数据库的产品,完全OOP代码结构。
如果不是拿来学习,而是直接使用,这个Db4o数据库也是非常容易使用的,因为是OOP数据库,备份也方便,复制文件就行了。
JAVA 版本代码
public static void accessDb4o() {
ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded
.newConfiguration(), DB4OFILENAME);
try {
storeFirstPilot(db);
} finally {
db.close();
}
}
public static void storeFirstPilot(ObjectContainer db) {
Pilot pilot1 = new Pilot("Michael Schumacher", 100);
db.store(pilot1);
System.out.println("Stored " + pilot1);
}
C#版本代码
public static void AccessDb4o()
{
using(IObjectContainer db = Db4oEmbedded.OpenFile(YapFileName))
{
StoreFirstPilot(db);
}
}
public static void StoreFirstPilot(IObjectContainer db)
{
Pilot pilot1 = new Pilot("Michael Schumacher", 100);
db.Store(pilot1);
Console.WriteLine("Stored {0}", pilot1);
}
更新内容:
- 升级到 .netstandard2.0,支持Xamarin移动设备与Linux。
- 升级到 Netbeans 11,方便编辑。
说明,这个Db4o是GPL社区版本,也就是跟 MySQL 同样的License。
写了一大堆推广别人,最后介绍一下自己,如果需要稳定的高性能数据库,选择iBoxDB。
Db4o GPL 源码下载 https://github.com/iboxdb/db4o-gpl
可以先从API文档看源码
.NET Docs Db4oEmbedded
JAVA Docs Db4oEmbedded
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 面向Python,面向对象(基础)
- 面向Python,面向对象(基础3)
- <<深入PHP面向对象、模式与实践>>读书笔记:面向对象设计和过程式编程
- 《JavaScript面向对象精要》之六:对象模式
- 《JavaScript面向对象精要》之三:理解对象
- 面向对象的程序设计之理解对象
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。