I am pleased to announce the release of ODB 1.2.0.
ODB is an open-source object-relational mapping (ORM) system for C++. It allows you to persist C++ objects to a relational database without having to deal with tables, columns, or SQL and without manually writing any of the mapping code.
Major new features in this release:
* Boost profile providing persistence support for Boost smart pointers, containers, and value types. For example:
1 2 3 4 5 6 7 8 9
|
#pragma db object
class employee
{
...
boost::gregorian::date born_;
boost::unordered_set<std::string> emails_;
boost::shared_ptr<employer> employer_;
};
|
* Support for embedding the database schema into the generated C++ code, in addition to generating the schema as a standalone SQL file.
* Support for transparent database reconnection.
* Support for handling recoverable exceptions (connection_lost, timeout, and deadlock).
A more detailed discussion of the major new features can be found in the following blog post:
http://www.codesynthesis.com/~boris/blog/2011/03/16/odb-1-2-0-released/
For the complete list of new features in this version see the official release announcement:
http://www.codesynthesis.com/pipermail/odb-announcements/2011/000002.html
ODB is written in portable C++ and you should be able to use it with any modern C++ compiler. In particular, we have tested this release on GNU/Linux (x86/x86-64), Windows (x86/x86-64), Mac OS X, and Solaris (x86/x86-64/SPARC) with GNU g++ 4.2.x-4.5.x, MS Visual C++ 2008 and 2010, and Sun Studio 12.
More information, documentation, source code, and pre-compiled binaries are available from:
http://www.codesynthesis.com/products/odb/
Enjoy,
Boris