Prior knowledge or experience in database programming (SQL, JDBC, ORM, JPA, etc.) is not required, but some background in using the Java language is essential.
ObjectDB is an Object Oriented Database Management System (ODBMS). It provides all the standard database management services (storage and retrieval, transactions, lock management, query processing, etc.), but it uses an object oriented model to store and manage data. You can easily store ordinary objects (and graphs of objects) in an ObjectDB database directly.
There's no need to define tables or convert objects to records/records to objects using SQL or ORM, as opposed to when using relational database systems (RDBMS), such as Oracle, DB2, SQL Server or MySQL.
ObjectDB is a unique NoSQL database. It doesn't have the known disadvantages and limitations of NoSQL technology, which are weak query capabilities and lack of ACID (atomicity, consistency, isolation, durability).
Unlike other NoSQL solutions, ObjectDB provides full support of rich complex queries, using two standard Java query languages: JPQL (Java Persistence Query Language) and JDOQL (JDO Query Language). The power of these query languages is equivalent to the power of SQL, but they are easier to use in object oriented languages such as Java.
In addition, unlike most other NoSQL databases, ObjectDB supports full ACID (atomicity, consistency, isolation, durability). Therefore, ObjectDB can be used in applications that cannot use conventional non ACID NoSQL databases because of a requirement for a very high level of consistency.