We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Wt::Dbo: a C++ ORM library

Formale Metadaten

Titel
Wt::Dbo: a C++ ORM library
Alternativer Titel
Wt::Dbo: a C++ ORM (Object Relational Mapping) library
Serientitel
Anzahl der Teile
97
Autor
Lizenz
CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
The talk introduces Wt::Dbo. It will be compared to existing ORM and database solutions for C++ and other programming languages. Based on simple examples, you will learn how you can use Wt::Dbo to manipulate objects that are stored in a database from within C++. Wt::Dbo is a brand new C++ ORM layer. Similar to Hibernate for Java and ActiveRecords for Ruby, Wt::Dbo offers a convenient way to interact with objects which are serialized in a database. Although the lack of introspection in C++ seems to be problematic to write a decent ORM in C++, Wt::Dbo demonstrates that appropriate use of the C++ template system offers a perfect alternative. Currently, Wt:dbo contains the following functionality: Automatic schema creation Mapping of 1-N and M-N relations Lazy loading of objects and collections Uses prepared statements throughout Basic query support Automatic dirty checking and database synchronization Built-in optimistic locking (using a version field)Transactional integrity, even when a transaction fails: dirty objects remain dirty and may later be saved in a new transaction, or may be reverted to their persisted state (unlike Hibernate where you are forced to discard the whole session) Transaction write-behind for changes, with support for manual flushing Forces use of surrogate keys Does not depend on Wt (can be used independently) Simple backend system: at the moment only SQLite3. We are looking at how we can perhaps can leverage SOCI if it makes its way into Boost.