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

00:00

Formal Metadata

Title
Wt::Dbo: a C++ ORM library
Alternative Title
Wt::Dbo: a C++ ORM (Object Relational Mapping) library
Title of Series
Number of Parts
97
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
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.
Texture mappingObject-oriented programmingObject-relational mappingRelational databaseLibrary (computing)MereologyLibrary (computing)DatabaseCodeComputer animationXML
Object-oriented programmingRelational databaseCode generationTexture mappingMacro (computer science)Relational databaseCodeProgramming languageFlow separationMacro (computer science)BitError messageGame controllerElectric generatorComputer fileSurjective functionPointer (computer programming)Field (computer science)Order (biology)Table (information)BlogLibrary (computing)Object-relational mappingTexture mappingInheritance (object-oriented programming)SequelBlock (periodic table)Home pageSocial classLogical constantComputer animationLecture/Conference
OvalString (computer science)Group actionTexture mappingFront and back endsIntegerRevision controlDatabase transactionExecution unitLaserQuery languageState diagramKeyboard shortcutStatement (computer science)Parameter (computer programming)TrailSocial classDatabase transactionMetadataPointer (computer programming)Category of beingDatabaseMultiplication signCASE <Informatik>Operator (mathematics)MehrplatzsystemField (computer science)Group actionObject (grammar)SequelInformationBitConnected spaceTable (information)Texture mappingSlide ruleMereologyFront and back endsFerry CorstenObject-oriented programmingQuery languageCodeDeclarative programmingElectric generatorInteractive televisionResultantBoundary value problemComputer programmingException handlingPoint (geometry)TouchscreenTelephone number mappingPlastikkarteLatent heatCodeData storage deviceNormal (geometry)Surjective functionString (computer science)Computer animation
Database transactionLaserQuery languageState diagramPlastikkarteObject (grammar)Pointer (computer programming)Memory managementWritingoutputDatabase transactionRight angleIterationSemiconductor memoryForm (programming)Pointer (computer programming)PlastikkarteHierarchySinc functionObject-oriented programmingDatabaseTable (information)Revision controlQuery languageRow (database)Social classFlow separationMereologyNumberInformationoutputMemory managementSequelObject (grammar)Bit rateResultantComputer animationLecture/Conference
Finitary relationGroup actionSocial classType theoryObject (grammar)ProgrammschleifeDatabaseField (computer science)Library (computing)Database transactionQuery languageTupleKeyboard shortcutParameter (computer programming)Statement (computer science)Front and back endsRollback (data management)Concurrency (computer science)Convex hullInformationSocial classPointer (computer programming)Moment (mathematics)Arithmetic meanGroup actionRelational databaseString (computer science)Field (computer science)InformationDatabaseLibrary (computing)ResultantMereologyDatabase transactionObject (grammar)TupleQuery language1 (number)Type theoryProgrammschleifeConcurrency (computer science)Uniform resource locatorBlogFront and back endsMemory managementSequelPoint (geometry)Sound effectStatement (computer science)Object-oriented programmingAuthorizationEvent horizonException handlingNumbering schemeComputer animation
XML
Transcript: English(auto-generated)