设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 软件追踪 查看内容

iBoxDB 2.19/2.11发布,嵌入式ACID NoSQL数据库

2019-7-26 21:52| 发布者: joejoe0332| 查看: 503| 评论: 0|原作者: oschina|来自: oschina

摘要: iBoxDB是一个高性能,低内存嵌入式 ACID NoSQL 数据库,使用数据库表配合SQL-Like查询的风格, ORM内置,支持直接使用 Java C# 操作数据,与应用程序无缝连接,自然API设计,超长代码轻松阅读。如果单机万级查询不够 ...

iBoxDB是一个高性能,低内存嵌入式 ACID NoSQL 数据库,使用数据库表配合SQL-Like查询的风格,
ORM内置,支持直接使用 Java C# 操作数据,与应用程序无缝连接,自然API设计,超长代码轻松阅读。如果单机万级查询不够用,还具有远程多数据库同步接口。
无多余后台线程,用于移动设备不费电.

支持 Java6+ NET2+ Android Unity3D Xamarin

新增功能 :
在支持多线程基础上增加多进程访问.
有些不关注性能的软件,采用多进程模型进行代码隔离,
新版本在 64bit Linux/Windows 下提供多进程数据访问支持。

演示代码 Java 11

初始化数据库

public class MyClass {
    public long id;
    public String value;
}

import iBoxDB.LocalServer.*;
DB.root("/tmp"); //数据库路径
var db = new DB();
db.getConfig().ensureTable(MyClass.class, "Table", "id");

高性能单进程多线程操作

//使用进程全局变量
static AutoBox auto = db.open();

try (var box = auto.cube()) {
   box.d("Table").insert(new MyClass() {
      {
         id = box.newId();
         value = new java.util.Date().toString();
      }
   });
   var cr = box.commit();
}
        
System.out.println( auto.select("from Table") );


启动多进程支持

db.waitAnotherApp(1000 * 60);

//使用局部变量,用完回收
try (var auto = db.open()) {
    try (var box = auto.cube()) {
        box.d("Table").insert(new MyClass() {
            {
                id = box.newId();
                value = new java.util.Date().toString();
            }
        });
        var cr = box.commit();
    }
    System.out.println(auto.select("from Table"));
}

节省大家的阅读时间,如需要更多演示代码,访问下载页


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部