Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the best value Java object database? [closed]

What's the best value Java object database out there that has:

  • Ease of use: one line of code to store any object.
  • Efficient memory usage: i.e. only loads the things that are called for, not the whole object every time (i.e. "Transparent Activation").
  • Automatically change objects when manipulated (i.e. "Transparent Persistence").
  • Native querying (no need for SQL, JDOQL etc.)
  • Free

where anybody has experience with the following:

  • Neodatis
  • db4o
  • JODB
  • joafip
  • MyOODB

?

like image 610
Navigateur Avatar asked Dec 29 '10 13:12

Navigateur


People also ask

Which is best database for Java?

Java DB. Java DB is Oracle's supported distribution of the open source Apache Derby database. Its ease of use, standards compliance, full feature set, and small footprint make it the ideal database for Java developers. Java DB is written in the Java programming language, providing "write once, run anywhere" portability ...

Which is not good practice for creating objects in Java?

Avoid Creating Objects or Performing Operations That May Not Be Used. Replace Hashtable and Vector With Hashmap, ArrayList, or LinkedList If Possible. Reuse Objects Instead of Creating New Ones If Possible. Use Stringbuffer Instead of String Concatenation.

Are object databases still used?

Object databases do exist actually, even outside academia. But don't expect to see anything as big as SQL Server or Oracle in that area anytime soon. They do exist as a theory and as small, application-specific databases and various products.


1 Answers

I can only answer for db4o. I don't have enough experience with the other databases you've named.

  • Ease of use: I think that db4o is very easy to use in many scenarios. You add the db4o jar to your project, open the database and start storing and querying objects.
  • Efficient memory usage: Yes, db4o can do that. It supports transparent activation. In that mode db4o loads only objects which you are actually using.
  • Automatically change objects when manipulated: Is also supported.
  • Native querying: Yes db4o supports that. Native queries are great and powerful. However in practice complex native queries often cannot be optimized and run slow. In such cases you have to fall back to less elegant SODA queries.
  • It's free under a GPL licence.

Another advantage of db4o that has a community which can help and share knowledge.

Do you have a particular use case scenario for the database? I think that you should pick the database which fits you're application the best.

like image 184
Gamlor Avatar answered Sep 28 '22 17:09

Gamlor