db4objects - 是一個Open Source Object Database~ 它採用GPL License~ 那什麼是Object Database?和一般我們常見的Rational Database有什麼不同呢?
如果你熟悉Java領域中的ORM(Object-Relational Mapping)~ 那麼你一定聽過Hibernate~
這裡我直接用個簡單的例子來介紹一下~
一般我們要在程式中新增一筆資料到資料表,通常還是會下SQL語法來處理,例如:
insert into comment(name,email,content) values('王大明','[email protected]','你好')
那如果透過Object Database或ORM會是什麼情況呢?大致上是如下述的例子:
Comment comment = new Comment(); comment.setName("王大明"); comment.setEmail("[email protected]"); comment.setContent("你好"); .....
也就是說~ 操作資料庫的CRUD已經不需要再透過SQL語法了~ 直接利用物件導向的程式語言來撰寫即可~ 這樣最大的好處在於不需要再去搞懂SQL語法~
而Hibernate就是處理Rational Database和OOP之間的Middleware~
也就是說~ 如果採用db4o其實就不需要Hibernate了~ 不過這要看Object Database是否成熟才能斷定論~
有機會再來玩玩吧~ ^^
相關資源
.joeyta備忘記: db4o(Object Database)備忘記
.Enterprise Java Community: Inside db4o
.Android与db4o的完美结合-Password Manager
.Object-oriented database articles and products
.Object-Oriented Databases - Integrating Programming and Databases
學術資源
底下是透過Google Scholar隨便找看到的~ 有空的話再來看看~
.Teaching Java: using an object-oriented database and the BlueJ IDE
. The object behavior of Java object-oriented database management systems