java db4o,DB4O--java对象数据库
特点
直接存储java对象,抛弃对象映射的繁琐
可以使用简单的查询语句
致命缺点
与java语言绑定
demo
gitee地址
https://gitee.com/ichiva/db4o-demo.git
主要依赖
org.fudaa.com.db4o
db4o-java5
5.5.1
编写测试用例
官方实体类
@Data
public class Car {
private Integer id;
private String name;
}
@Data
public class People {
private Integer id;
private String name;
private String address;
private List cars;
}
连接数据库
private ObjectContainer container;
@Before
public void before(){
this.container = Db4o.openFile("auto.yap");
System.out.println("before:");
}
写入数据
@Test
public void add(){
Car car = new Car();
car.setName("byd");
car.setId((int) (Math.random() * Integer.MAX_VALUE));
container.set(car);
container.commit();
}
获取并修改数据
@Test
public void update(){
ObjectSet query = container.query(Car.class);
query.forEach(e ->{
Car car = (Car)e;
car.setName("bmw");
container.set(car);
});
}
遍历
@Test
public void showCars() {
ObjectSet query = container.query(Car.class);
query.forEach(System.out::println);
}
别忘了关闭数据库
@After
public void after(){
if(null != container) container.close();
}
总结,db4o整体可以看作jdk序列化的升级版 PS.这货有稀奇古怪的bug,请在老司机的监视下上生产
gitee地址
https://gitee.com/ichiva/db4o-demo.git
java db4o,DB4O--java对象数据库相关推荐
- java快速创建dto_根据数据库表对象信息快速建立Dto类详解
整体思路 1.进入数据库,查看表信息,复制表信息中的数据库字段部分 2.利用java代码读取剪贴板内容 3.切割替换字符串,把字段注释转成java文档注释,把下划线改成驼峰命名规则 直接附代码,可以直 ...
- 开源面向对象数据库 db4o 之旅: 初识 db4o“db4o 之旅(一)”
前言 业界对持久存储领域的追求从未停止过,为了更方便.更容易地用对象表达我们的思维,开源领域和商业领域都涌现了许多新技术, ORM 的出现恰恰说明了这点.最近一年,业界也在反思,到底 ORM 给我们带 ...
- 开源面向对象数据库 db4o 之旅: 深入 db4o “db4o 之旅(三)”
前言 在开源面向对象数据库 db4o 之旅 系列文章的第 1 部分:初识 db4o 中,作者介绍了 db4o 的历史和现状,应用领域,以及和 ORM 等的比较: 在第 2 部分:db4o 查询方式中, ...
- java在何时获得对象的确切类型_JAVA面试题(1)
基础部分 面向对象 1.谈谈你对多态的理解. 答:在java中对于多态的理解是很重要的 多态的定义: 允许不同类的对象对同一消息做出相应,同一消息可以根据发送对象的不同而采用多种不同的行为方式,(发送 ...
- Java综合知识总结_数据库篇
JavaMySQL 一.JDBC连接数据库步骤(以MYSQL为例) 1.加载JDBC驱动程序: 通过Class类的forName方法实现,并将驱动地址放进去 成功加载后,会将Driver类的实例注册到 ...
- jaba窗体连接mysql增删改查_知识实现——Java使用jdbc连接MySql数据库,实现增删改查...
Java使用jdbc连接MySql数据库,实现增删改查 首先,导入MySql连接数据库的jar包,我用的是 mysql连接jar包 DB类,用于获得数据库连接 import java.sql.Driv ...
- java的几种对象(PO,VO,DAO,BO,POJO)解释
本文转自: http://blog.csdn.net/bzhxuexi/article/details/8227808 Java的几种对象(PO,VO,DAO,BO,POJO)解释 一.PO:pe ...
- java流式传输对象_Java性能:面向教学与流式传输
java流式传输对象 在for循环中向上或向下计数是最有效的迭代方式吗? 有时答案既不可行. 阅读这篇文章,了解不同迭代品种的影响. 迭代性能 关于如何以高性能进行迭代有很多观点. Java中的传统迭 ...
- Java 8 Friday:Java 8将彻底改变数据库访问
在Data Geekery ,我们喜欢Java. 而且,由于我们真的很喜欢jOOQ的流畅的API和查询DSL ,我们对Java 8将为我们的生态系统带来什么感到非常兴奋. 对于Java 8系列 ,我们 ...
- java 的几种对象 (PO,VO,DAO,BO,POJO) 解释
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 一.PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象 ...
最新文章
- 强化学习(五) - 时序差分学习(Temporal-Difference Learning)及其实例----Sarsa算法, Q学习, 期望Sarsa算法
- 【怎样写代码】偷窥高手 -- 反射技术(五):深入窥视方法
- 经典数学问题:Nim游戏
- 过年,你肯定会用到这款小程序!
- Flask cookie API(response.set_cookie,request.cookies)
- mongoDB - 插入数据
- Arcgis Android 基本概念 - 浅谈
- vscode统计代码行数
- 戴尔服务器怎么win7系统安装系统,戴尔 DELLVostro3400能不能安装windows7系统_戴尔 DELLVostro3400怎么安装win7系统-win7之家...
- Java基础篇---练习:类的设计
- 永恒之黑(CVE-2020-0796 微软SMBv3协议远程代码执行漏洞)
- python爬虫实战-如何批量爬取唯品会商品信息>>>
- DDD - 概述 - (一)
- bom成本分析模型_BOM成本估算表
- 下面属于python内置对象的有哪些_python练习题-写一个函数,打印所有包含copy方法的内置对象...
- IEEE1588时钟同步服务器应用数字化变电站
- DTMB BDA TV USB
- java pinyin4j_java实现中文汉字转拼音 Pinyin4j的基本用法
- pdf预览在vue项目中的使用兼容ie浏览器
- 《强化学习周刊》第71期:ICAPS2023强化学习论文推荐、Meta:通过将语言模型与战略推理相结合,在外交游戏中发挥人的水平...