DB4O 社区版 8.1.3 发布,面向对象数据库
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
https://iboxdb.github.io/db4o-gpl-doc/images/db4o_gpl.png
https://iboxdb.github.io/db4o-gpl-doc/images/tree.png
产品对比:
Db4o 适合操作面向对象结构,提供图形界面查询数据。
iBoxDB 适合高性能,高并发,安全数据空间的应用需求。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
APIJSON 3.7.3 发布,完善 JFinal、PostgreSQL 支持与文档
APIJSON 3.7.3更新内容: 完善中文和英文文档,感谢洛杉矶小姐姐的贡献,国际化更进一步; 更新 PostgreSQL 的测试表,官网已支持直接测试 MySQL,PostgreSQL 两种数据库; 同步 APIJSONBoot 的代码到 APIJSONFinal(JFinal 版 Demo),解决缺 libs 目录及相关 jar 包; 具体见Release 发布版本。 APIJSON 简介 APIJSON是一种专为API而生的JSON网络传输协议以及基于这套协议实现的ORM库。 为简单的增删改查、复杂的查询、简单的事务操作提供了完全自动化的API。 能大幅降低开发和沟通成本,简化开发流程,缩短开发周期。 适合中小型前后端分离的项目,尤其是互联网创业项目和企业自用项目。 通过自动化API,前端可以定制任何数据、任何结构! 大部分HTTP请求后端再也不用写接口了,更不用写文档了! 前端再也不用和后端沟通接口或文档问题了!再也不会被文档各种错误坑了! 后端再也不用为了兼容旧接口写新版接口和文档了!再也不会被前端随时随地没完没了地烦了! 对于前端 不用再向后端催接口、求文档 数据和结构...
- 下一篇
Visual Studio 的 Gitee 扩展发布 1.0.93 更新版本
码云Gitee 的 Visual Studio 扩展发布最新更新版本 1.0.93 ,更新内容包括: 新增 代码窗口右键菜单中打开码云WebIDE的快捷菜单 修正了已经发布在了码云的代码依然显示发布按钮的问题 仓库地址:https://gitee.com/GitGroup/Gitee.VisualStudio 插件地址:https://marketplace.visualstudio.com/items?itemName=Gitee.GiteeVisualStudio 感谢 @麦壳饼的贡献
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL8.0.19开启GTID主从同步CentOS8
- Mario游戏-低调大师作品
- CentOS关闭SELinux安全模块
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池