Awesome Open Source
Awesome Open Source

QxOrm library - Official repository

QxOrm library is an Object Relational Mapping (ORM) and Object Document Mapper (ODM) database library for C++ Qt developers. Main features are :

  • Persistence : support most common databases like SQLite, MySQL, PostgreSQL, Oracle, MS SQL Server, MongoDB (with 1-1, 1-n, n-1 and n-n relationships) ;
  • Serialization : JSON, binary and XML format ;
  • Reflection (or Introspection) : access dynamically to classes definitions, retrieve properties and call classes methods ;
  • HTTP web server : standalone multi-threaded HTTP 1.1 web server (support SSL/TLS, persistent connections, cookies, sessions, chunked responses, URL dispatcher/routing) ;
  • JSON API : interoperability with other technology than C++/Qt (REST web services, QML applications, scripting language).

Documentation

QxOrm website provides a user manual.

The goal of this documentation is to provide a user guide to learn how to work with QxOrm library features. This manual is intended for developers and software architects who are looking for a solution to manage a persistent data layer in C++/Qt. Technical skills in C++ and databases are required to understand this document.

Note : all features described in this manual/user guide can be defined quickly and easily with QxEntityEditor application (the graphic editor for QxOrm library, data model designer and source code generator). Another documentation dedicated to QxEntityEditor application is available on QxOrm website.

QxEntityEditor application

QxEntityEditor is a graphic editor for QxOrm library : QxEntityEditor provides a graphic way to manage the data model. QxEntityEditor is multi-platform (available for Windows, Linux and Mac OS X) and generates native code for all environments : desktop (Windows, Linux, Mac OS X), embedded and mobile (Android, iOS, Windows Phone, Raspberry Pi, etc.). A user manual (documentation) for QxEntityEditor application is available on QxOrm website.

QxEntityEditor is based on plugins and provides many ways to import/export your data model :

QxEntityEditor application

Dependencies

By default, QxOrm library depends only on QtCore and QtSql libraries from Qt framework. If you enable QxOrm HTTP web server feature, then QxOrm library will depend also on QtNetwork library. Some features require boost dependency (disabled by default).

Authors

QxOrm is developed by Lionel Marty, a software development engineer since 2003.

License

QxOrm is a C++ library available under a dual license :

  • GNU/GPLv3 license : open-source and free (to develop an open-source project or to evaluate QxOrm library) ;
  • Proprietary license to distribute an application based on QxOrm library without any restrictions of GNU/GPLv3 license.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
C Plus Plus (363,573
Cpp (15,702
Mongodb (14,113
Mysql (12,135
Json (11,100
Postgresql (7,664
Xml (3,771
Sqlite (2,861
Qt (2,782
Orm (2,070
Sql Server (1,458
Http Server (1,453
Serialization (1,212
Oracle (1,161
Mariadb (971
Persistence (392
Dao (267
Odm (146
Related Projects