IBATIS

From Javapedia

Jump to: navigation, search
<tr><td colspan="2" style="text-align: center;">Image:IBATIS.jpg
</td></tr><tr><th>Developer:</th><td>Clinton Begin</td></tr><tr><th>Latest release:</th><td>2.3.0 / Dec 01, 2006</td></tr><tr><th>OS:</th><td>Cross-platform</td></tr>
iBATIS
Use: Application framework

<tr><th>License:</th><td>Apache 2.0</td></tr>

Website: ibatis.apache.org

iBATIS (eye-BAT-iss) is a persistence framework which couples POJOs (Plain Old Java Objects) with SQL statements using XML descriptor files. Simplicity is the biggest advantage of the iBATIS Data Mapper over ORM tools. Mapping of the retrieved objects is automatic or semi-automatic.

Developed in 2001, the framework is currently available in Java, .NET, and Ruby (RBatis).

iBATIS can map nearly any database to any object model and is very tolerant of legacy designs. This is all achieved without special database tables, peer objects or code generation.

[edit] Enter the Pet Store "Benchmarks"

In early 2002 Microsoft published a paper claiming that .Net was 10 times faster and 4 times more productive than J2EE. The iBATIS project quickly responded and on July 1, 2002, JPetStore 1.0 was released. Based on the same Pet Store requirements, JPetStore demonstrated that Java could not only be more productive than .Net, but could also do so while achieving a better architecture than was used in the Microsoft implementation. JPetStore made use of an interesting persistence layer that quickly captured the attention of the open source community. Shortly after releasing JPetStore, questions and requests for the SQL Maps and DAO frameworks spawned the project that would become known as iBATIS Database Layer. The iBATIS Database Layer includes two frameworks that simply happen to be packaged together: SQL Maps and DAO.

Today the iBATIS project is heavily focused on the persistence layer frameworks known as SQL Maps and Data Access Objects (DAO). JPetStore lives on as the official example of typical usage of these frameworks.

[edit] Sites using iBATIS

Personal tools