Relational data persistence with Apache Empire-db
Apache Empire-db is a relational database abstraction layer and data persistence component that allows developers to take a much more SQL-centric approach in application development than traditional Object-relational mapping frameworks (ORM). By providing a unique type-safe object orientated command API Empire-db allows building highly efficient SQL-statements that take full advantage of all database features while eliminating the need for error-prone string operations and literals. This, togehter with DBMS independent record and metadata managment leads to an unprecedented level of ease-of-use and compile-time-safety.
This is how it compares:
The classic ORM approach (e.g. JPA, Hibernate) |
Empire-db | |
---|---|---|
Database schema definition | XML or annotations | Java object model |
Data and metadata access | Static JavaBeans used for simple data transfer. No or cumbersome metadata support. | Dynamic beans with metadata available through comprehensible and concise object hierarchy. |
Dynamic query definition | String-based query language
or object based API requiring column / property names to be provided as string literals. Usually works with full database entities. | Type-safe, string-free
and intuitive API. Build any SQL statement including the select clause and use it with any POJO not just full featured entity beans. |
... and what it can be used for:
With dynamic beans and metadata support Empire-db may serve as the groundwork for building applications with a yet unknown level of integration. For the popular Struts2 Web application framework we offer an extension which acts as the glue between presentation and business / persistence layer. This not only dramatically reduces redundancies and thus improves quality but also allows a much better separation of model and view. As an example, whether or not the value of a form input control is editable or read only (which might depend on user access rights or record state) can be controlled solely by the model without any changes in the view.
Find out more....
Empire-db at a glance | Empire-db facts and features. |
---|---|
Empire-db vs. Hibernate | Learn about the different concepts of relational data persistence. |
Empire-db and Struts 2 | Find out how Web applications can benefit from Empire-db's dynamic beans and metadata. |
Get Empire-db | Download Empire-db and related packages as well as sample projects. |