对db4o(面向对象的数据库)的基本操作:

数据库的链接:

private static ObjectContainer db;final static String DB4OFILENAME = System.getProperty("user.dir")+ "/database.db4o";static{db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);}

数据库存储:

public void store(Object obj) {ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);try {db.store(obj);} finally {db.close();}}

数据的查询,更新,和删除操作:

public void queryObject() {ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);List<Person> persons = null;try{persons = db.query(new Predicate<Person>() {private static final long serialVersionUID = 1L;public boolean match(Person person) {
//                  return "Allen".equals(person.getName());//根据特定的条件查询数据return true;//查询数据库中对应表中所有的数据,此处为person表}});for(Person per : persons) {System.out.println(per.getName()+" : " + per.getPassword());}Person person = persons.get(0);System.out.println(person);person.setName("Person");db.store(person);
//          db.delete(person);System.out.println("==================");for(Person per : persons) {System.out.println(per.getName()+" : " + per.getPassword());}} finally {db.close();}}

完整的代码:

Person

public class Person {private String id;private String name;private String password;public Person(String id, String name, String password) {this.id = id;this.name = name;this.password = password;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}
}

Operation

import java.util.List;import com.db4o.Db4oEmbedded;
import com.db4o.ObjectContainer;
import com.db4o.eight.study.bean.Person;
import com.db4o.query.Predicate;
import com.db4o.query.Query;public class Operation {//  private static ObjectContainer db;final static String DB4OFILENAME = System.getProperty("user.dir")+ "/database.db4o";//    static{
//      db = Db4oEmbedded.openFile(
//              Db4oEmbedded.newConfiguration(), DB4OFILENAME);
//  }// public static ObjectContainer DB4oConnection() {
//      return db;
//  }//db4o 数据库存储对象public void store(Object obj) {ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);try {db.store(obj);} finally {db.close();}}//db4o 数据库进行查询,第一种查询方法public void queryObject() {ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);List<Person> persons = null;try{persons = db.query(new Predicate<Person>() {private static final long serialVersionUID = 1L;public boolean match(Person person) {
//                  return "Allen".equals(person.getName());//根据特定的条件查询数据return true;//查询数据库中对应表中所有的数据,此处为person表}});for(Person per : persons) {System.out.println(per.getName()+" : " + per.getPassword());}Person person = persons.get(0);System.out.println(person);person.setName("Person");db.store(person);
//          db.delete(person);System.out.println("==================");for(Person per : persons) {System.out.println(per.getName()+" : " + per.getPassword());}} finally {db.close();}}//db4o 数据库进行查询,第二种查询方法public void queryObject(String name) {ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);List<Person> persons = null;try{Query query = db.query();query.constrain(Person.class);query.descend("name").constrain(name);persons = query.execute();System.out.println(persons.get(0).getName()+" : " + persons.get(0).getPassword());} finally {db.close();}}//db4o 删除一个对象public void deleteObject(Object obj) {ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);try {db.delete(obj);} finally {db.close();}}public static void main(String[] args) {System.out.println(DB4OFILENAME);Operation op = new Operation();
//      Person person = new Person("000001", "Allen", "123456");
//      Person person1 = new Person("000002", "Jeson", "654321");
//      Person person2 = new Person("000003", "Aimi", "234156");
//      op.store(person);
//      op.store(person1);
//      op.store(person2);op.queryObject();
//      op.queryObject("Aimi");
//      op.deleteObject(person2);}
}

db4o数据库的基本操作相关推荐

  1. JDBC编程:2(数据库的基本操作)

    数据库的基本操作 查询数据 在开始前先简单地介绍一下什么是静态SQL和动态SQL: 静态SQL,在编译阶段就可以确定数据库要做什么事情.在某种高级语言中,如果嵌入了SQL语句,而这个SQL语句的主体结 ...

  2. 通过sql语句对MySql数据库的基本操作

    一.数据库的基本操作 1 CREATE DATABASE mybookstore; 2 DROP DATABASE mybookstore; 二.表的基本操作 1.创建表 insert into 表名 ...

  3. 图解sqlserver 2000 还原数据库的基本操作

    图解sqlserver 2000 还原数据库的基本操作,是我在测试单位服务器上的数据库,恢复数据的完整性所进行的简单测试.由于时间紧张,我不直接在博文里写出来了,有好多图不大方便插入,所以有爱好这个知 ...

  4. 实现MySQL数据库的基本操作(增删改查)

    (注意:数据库操作所有命令都要在最后加分号,关键字不区分大小写) 一.数据库的基本操作 1.查看已有库: show databases; 2.创建库: create database 库名 [char ...

  5. TP框架对数据库的基本操作

    数据库的操作,无疑就是连接数据库,然后对数据库中的表进行各种查询,然后就是对数据的增删改的操作,一步步的讲述一下框架对数据库的操作 想要操作数据库,第一步必然是要:链接数据库 一.链接数据库 (1)找 ...

  6. mysql数据库读写操作_一看就会,MySQL数据库的基本操作(二)

    上一节学习了MySQL数据库的基本操作的几个命令,1.登陆数据库:mysql -h localhost -u root -p.2.查看已有的数据库命令:show databases. 3.创建自己的数 ...

  7. mysql 四大基础操作_mysql数据库的基本操作

    mysql数据库的基本操作 首先我们要把mysql装好 mkdir chen/ mount.cifs //192.168.100.23/LNMP chen/ [root@localhost ~]# y ...

  8. mysql 修改库的校对集_mysql数据库的基本操作(增删改查、字符集、校对集)

    MySQL数据库概述 MySQL数据库是经典的关系型数据库管理系统,MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Dat ...

  9. 数据库的基本操作、增删查改

    数据库的基本操作 这篇文章我们主要是讲数据库的一些基本操作和增删查改数据的一些方法 我们先来讲如何创建数据库的. 我们先找到SQL Server 2014 Management Studio这个软件, ...

最新文章

  1. ASP.NET EntityFrameworkCore code first 多对多设计
  2. 认识flex中的sprite
  3. cocos2d学习路线
  4. 带圆圈大小的散点图_Python数据可视化,Matplotlib绘制“散点图”的两种方法!...
  5. 给你的页面加一个百度地图
  6. css中 background:0 0;
  7. 腾讯的天天快报凭什么想挑战今日头条?
  8. PCD文件的rgb格式
  9. 一名淘宝店长运营店铺靠谱指南
  10. html语言怎么给字体加颜色代码,html怎么给字体设置颜色
  11. UI——无限轮播图和分栏控制器
  12. 李白藏头诗鸿蒙,女子示爱的诗词
  13. Latex overleaf 图表公式参考文献
  14. 华为大手机 m3 linux,华为平板 M3(青春版10.1英寸 全网通)手机完美获取root教程,最强root工具,亲测可用!...
  15. Python-接口自动化流程(pytest)
  16. SpringBoot 消息转换器 HttpMessageConverter
  17. 编解码器的世界 - 从字幕组说起
  18. ElasticSearch 模糊搜索方案
  19. 数据结构-顺序表的顺序存储
  20. NetApp 人工智能解决方案

热门文章

  1. 微信小程序开发之——个人中心-收货地址(9)
  2. Django数据库字段及参数
  3. 集合——List集合
  4. 高级JAVA开发必备技能:java8 新日期时间API((一)JSR-310:ZoneId 时区和偏移量)(JAVA 小虚竹)
  5. Java基础及API总结
  6. 宏定义函数和普通函数
  7. jQuery Cookbook中文版
  8. PCIe TLP详解
  9. rdesktop架构解析(RDP协议分析)
  10. CANoe:CAN报文发送前的字节预处理(applILTxPending函数)