Java的面向对象数据库db4o

上学的时候就听老师说过有对象数据库。

但是我所接触的数据库都是关系型数据库mysql,oracle,ms sql server,或是db2.

最近在ibm development work上看到一个名为db4o的对象数据。

才看第一章,学过Java的都应该很容易理解的。

确实它真的很简单。

看起来似乎就像是在一个Java的操作,而并非如我们所以为的那样的想关系型数据库中操作一样。

如果有兴趣的话,大家也可以去看看。

不过,文章作者也对db4o的一些缺点进行了列举。

自己并没有进行很深入的学习。

只是对其感兴趣罢了。

或许对系数据库可能让我们进入一个新的世界。

 1 public class Person 2 { 3     public Person() 4     { } 5     public Person(String firstName, String lastName, int age) 6     { 7         this.firstName = firstName; 8         this.lastName = lastName; 9         this.age = age;10     }11     12     public String getFirstName() { return firstName; }13     public void setFirstName(String value) { firstName = value; }14     15     public String getLastName() { return lastName; }16     public void setLastName(String value) { lastName = value; }17     18     public int getAge() { return age; }19     public void setAge(int value) { age = value; }20 21     public String toString()22     {23         return 24             "[Person: " +25             "firstName = " + firstName + " " +26             "lastName = " + lastName + " " +27             "age = " + age + 28             "]";29     }30     31     public boolean equals(Object rhs)32     {33         if (rhs == this)34             return true;35         36         if (!(rhs instanceof Person))37             return false;38         39         Person ther = (Person)rhs;40         return (this.firstName.equals(other.firstName) &&41                 this.lastName.equals(other.lastName) &&42                 this.age == other.age);43     }44     45     private String firstName;46     private String lastName;47     private int age;48 }49

数据库的insert

 1  2 import com.tedneward.model.*; 3  4 public class Hellodb4o 5 { 6     public static void main(String[] args) 7         throws Exception 8     { 9         ObjectContainer db = null;10         try11         {12             db = Db4o.openFile("persons.data");13 14             Person brian = new Person("Brian", "Goetz", 39);15             16             db.set(brian);17             db.commit();18         }19         finally20         {21             if (db != null)22                 db.close();23         }24     }25 }26

或是用另外的一种方法进行insert操作。

 1 public class Hellodb4o 2 { 3     public static void main(String[] args) 4         throws Exception 5     { 6         ObjectContainer db = null; 7         try 8         { 9             db = Db4o.openFile("persons.data");10 11             Person brian = new Person("Brian", "Goetz", 39);12             Person jason = new Person("Jason", "Hunter", 35);13             Person clinton = new Person("Brian", "Sletten", 38);14             Person david = new Person("David", "Geary", 55);15             Person glenn = new Person("Glenn", "Vanderberg", 40);16             Person neal = new Person("Neal", "Ford", 39);17             18             db.set(brian);19             db.set(jason);20             db.set(clinton);21             db.set(david);22             db.set(glenn);23             db.set(neal);24 25             db.commit();26             27             // Find all the Brians28             ObjectSet brians = db.get(new Person("Brian", null, 0));29             while (brians.hasNext())30                 System.out.println(brians.next());31         }32         finally33         {34             if (db != null)35                 db.close();36         }37     }38 }39

详细介绍请参看ibm的学习文档。

http://www.ibm.com/developerworks/cn/java/jdb4o/?ca=j-h

也有善意的提醒:何不去远方!昆明呀——赶一个花海;

Java的面向对象数据库db4o

相关文章:

你感兴趣的文章:

标签云: