Sunday, September 23, 2012

Mardao 2 is released


I am very pleased to announce the first release of Mardao 2! The following requirements have been considered when rewriting from scratch:
  • Domain objects are now true POJOs with Annotations - no need to extend a class or implement an interface
  • Application code and generated code are completely agnostic of persistence type
  • @CreatedBy and @UpdatedBy are new auto-populated fields
  • @GeoLocation supports creating geo-hashes to do nearby and spatial searches
  • Domain fields can be of basically any field
  • Support for transient fields - by omitting @Basic annotation
  • All non-unique queries return an Iterable or a page
  • Support for cursors and cursor keys
  • Generator uses reflection to scan objects
  • True separation between generic Dao functionality, persistence-specific code and domain-specific methods

Example apps in production using Mardao

The following apps or services are in production and are using mardao:
  • Heathrow Airport Guide (Backend / Google App Engine)
  • TwoForOne voucher app (Android application / SQLite)
  • European Directories Mobile (XHTML web app / Spring JDBC / MySQL)
  • SonyEricsson Update Service (Backend / Spring JDBC / Oracle)
  • Golden Gekko device detection service (Backend / Google App Engine)
  • Google Search Prototype (BlackBerry / SQLite)

Read more at the mardao wiki on GitHub: https://github.com/sosandstrom/mardao/wiki