内容简介:Db4o 是一个面向对象数据库,能对复杂的对象结构进行持久化,支持单用户模式,多用户模式。 这版本把 Java7-Java11的一些有用新指令补上,主要是为了编译 Java11 的 Lambda 语句, Lambda 在底层使用了新指令,这...
Db4o 是一个面向对象数据库,能对复杂的对象结构进行持久化,支持单用户模式,多用户模式。
这版本把 Java 7-Java11的一些有用新指令补上,主要是为了编译 Java11 的 Lambda 语句,
Lambda 在底层使用了新指令,这个版本的 Db4o 还是基于 Java7,以补丁方式编译 Lambda。在OpenJDK11 上测试通过。
Java Lambda 已经很多年了,支持Lambda查询数据库的类库还很少,
这里直接把 Lambda 放入到 Db4o 中,简单查询条件直接编译为数据库查询语句。
使用例子
初始化
public static class Detail {
@Indexed
public long type;
public String memo;
public Record record;
}
public static class Record {
@Indexed
public String name;
public String noName;
@Indexed
public double indexField;
public double noIndexField;
public Detail detail;
}
String dbname = "index.j.db";
var ecfg = Db4oEmbedded.newConfiguration();
var memory = new MemoryStorage();
ecfg.file().storage(memory);
ecfg.common().add(new TransparentActivationSupport());
ecfg.common().add(new TransparentPersistenceSupport());
ecfg.file().generateUUIDs(ConfigScope.GLOBALLY);
try (var oc = Db4oEmbedded.openFile(ecfg, dbname)) {
}
插入对象
try (var see = oc.ext().openSession()) {
for (int i = 0; i < 1000; i++) {
for (int j = 0; j < 50; j++) {
var r = new Record();
r.name = "Name-" + i;
r.noName = r.name;
r.indexField = (double) i;
r.noIndexField = i;
r.detail = new Detail();
r.detail.record = r;
r.detail.type = j;
r.detail.memo = r.name + " on meno";
see.store(r);
}
}
see.commit();
}
Java Lambda 查询数据,一句实现全部表达,升级的代码就是为了运行这句在数据库上
var rs = see.query((Record r) -> r.indexField == value);
如果希望像普通 Lambda 一样运行,把字段名放在右边
产品对比
Db4o 采用很炫的面向对象技术。
iBoxDB 面向高性能与安全数据隔离。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 4 万字全面掌握数据库、数据仓库、数据集市、数据湖、数据中台
- Python3爬虫数据入数据库---把爬取到的数据存到数据库,带数据库去重功能
- Oracle数据库查询重复数据及删除重复数据方法
- sqlserver数据库获取数据库信息
- 从大数据到数据库
- node连接oracle数据库,更新数据后,数据库中不生效问题
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Tensorflow:实战Google深度学习框架
郑泽宇、顾思宇 / 电子工业出版社 / 2017-2-10 / 79
TensorFlow是谷歌2015年开源的主流深度学习框架,目前已在谷歌、优步(Uber)、京东、小米等科技公司广泛应用。《Tensorflow实战》为使用TensorFlow深度学习框架的入门参考书,旨在帮助读者以最快、最有效的方式上手TensorFlow和深度学习。书中省略了深度学习繁琐的数学模型推导,从实际应用问题出发,通过具体的TensorFlow样例程序介绍如何使用深度学习解决这些问题。......一起来看看 《Tensorflow:实战Google深度学习框架》 这本书的介绍吧!