DB4O 社区版 8.1.3 发布,面向对象数据库

栏目: 软件资讯 · 发布时间: 7年前

内容简介:Db4o是一个面向对象数据库,能对复杂的对象结构进行持久化,如树结构等, 并使用本地语言进行数据查询, 支持单用户模式,多用户模式。社区版本升级到全面支持Linux. 使用例子 初始化 import com.db4o.cs.Db4oC...

Db4o是一个面向对象数据库,能对复杂的对象结构进行持久化,如树结构等,
并使用本地语言进行数据查询,
支持单用户模式,多用户模式。社区版本升级到全面支持Linux.

使用例子

初始化

import com.db4o.cs.Db4oClientServer;
public class Node {
  public String name;
  public Node Left;
  public Node Right;
}
String dbname = "node.db";
var cfg = Db4oClientServer.newServerConfiguration();
cfg.common().objectClass(Node.class).cascadeOnActivate(true);
cfg.common().objectClass(Node.class).cascadeOnUpdate(true);
cfg.common().objectClass(Node.class).cascadeOnDelete(true);
cfg.common().objectClass(Node.class).callConstructor(true);
//Port=0, Local Server.
try (var server = Db4oClientServer.openServer(cfg, dbname, 0)) {
  ...
}

 

插入对象

try (var oc = server.openClient()) {
  Node root = new Node();
  root.name = "Root";

  root.Left = new Node();
  root.Left.name = "Left";

  root.Right = new Node();
  root.Right.name = "Right";

  root.Right.Right = new Node();
  root.Right.Right.name = "Right.Right";
  oc.store(root);
  oc.commit();
}

 

使用对象模板查询非null,非0数据

try (var oc = server.openClient()) {
  Node qo = new Node();
  qo.name = "Root";
  var ns = oc.queryByExample(qo);
  var root = ns.next();
  System.out.println(root.Right.Right.name);
}

 

Java风格查询

import com.db4o.query.Predicate;
try (var oc = server.openClient()) {
  List<Node> ns = oc.query(new Predicate<Node>() {
    @Override
    public boolean match(Node n) {
      return n.name.equals("Root");
    }
  });
  Node root = ns.get(0);
  System.out.println(root.Right.Right.name);
}

 

底层查询,可能适合开发自定义查询器

try (var oc = server.openClient()) {
  var q = oc.query();
  q.constrain(Node.class);
  q.descend("name").constrain("Root").equal();
  var ns = q.execute(Node.class);
}


这个版本全面升级对象管理器到 Linux 下。直接下载使用。

有高清大图,
https://iboxdb.github.io/db4o-gpl-doc/images/db4o_java_gpl.png

DB4O 社区版 8.1.3 发布,面向对象数据库
 

https://iboxdb.github.io/db4o-gpl-doc/images/db4o_gpl.png

DB4O 社区版 8.1.3 发布,面向对象数据库

//img1.3s78.com/codercto/5e22d81372e814208e0a7d8e4c5b5679

DB4O 社区版 8.1.3 发布,面向对象数据库

 

Db4o社区版本代码下载.
 

产品对比:

Db4o 适合操作面向对象结构,提供图形界面查询数据。
iBoxDB 适合高性能,高并发,安全数据空间的应用需求。

 


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

新媒体十讲

新媒体十讲

范卫锋 / 中信出版社 / 2015-8 / 38.00元

“新媒体参谋长”范卫锋解答:媒体人如何转型?怎么创业?如何看准新媒体项目进行投资? 作为“新媒体的参谋长”,本书作者范卫锋将十余年从业亲历的经验教训、行业内幕串联成册,从定位、突破、扩张、商业模式、价值几个方面剖析新媒体策略,解密国内媒体圈转型、创业、投资的实操法则。案例信手拈来,观点鞭辟入里,打造出国内第一本由专业新媒体投资人撰写的新媒体实战兵法,涉及媒体人转型、新媒体实操、媒体公关营销、......一起来看看 《新媒体十讲》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码