Important: Please read the Qt Code of Conduct -

QxOrm 1.1.4 released

  • Hi,

    QxOrm is a new open source ORM (Object Relational Mapping) C++ library designed to provide :

    • Persistence (based on QtSql Qt module)
    • Serialization (xml and binary, based on boost::serialization)
    • Reflection (invoke class methods and access to properties)

    QxOrm has been tested on Windows (Visual C++ 2008, 2010 and MinGW) and Linux (GCC 4.4.1).

    QxOrm is based on a simple and non intrusive 'setting function' (that can be compared with Hibernate xml mapping file).

    A quick sample (and a tutorial) is available on this web site :

    Changes in version 1.1.4:

    • New parameter in functions 'qx::dao::fetch_by_id', 'qx::dao::fetch_all', 'qx::dao::fetch_by_query' and 'qx::dao::update' to define a list of properties to fetch/update (by default, all properties are fetched/updated)
    • Support multi-columns primary key (composite key) : see sample './test/qxBlog_composite_key/'
    • Improve strategy of inheritance : QxOrm supports 'Concrete Table Inheritance' strategy ('Concrete Table Inheritance' becomes default strategy)
    • New smart-pointer 'qx::dao::ptr<T>' based on Qt 'QSharedPointer<T>' to provide 2 new features : 'is dirty' and 'update optimized'
    • 'qx::dao::ptr<T>' can be used with a simple object and with many containers (stl, boost, Qt and 'qx::QxCollection' containers)
    • 'qx::dao::ptr<T>' keeps original values from database and provides a 'isDirty()' method to retrieve all properties changed
    • 'qx::dao::update_optimized' must be used with 'qx::dao::ptr<T>' to save into database only properties changed

  • Moved to showcase forum

Log in to reply