"iBATIS seems to get left out of a lot of discussions of object-relational (OR) frameworks, often in favor of the very popular Hibernate. But as Spring: A Developer's Notebook authors Bruce Tate and Justin Gehtland note, iBATIS walks a very different path than many OR frameworks: "iBATIS makes no attempt to hide SQL from you at all. In fact, it embraces SQL.""
"iBatis Data Access Object (DAO) is an open source framework now hosted by Apache and targeted at solving these type of problems. It provides you with an infrastructure for creating applications based on the DAO pattern. What this means is that you can create a XML file and declare that XMLContactDAO.java is the implementation class for ContactDAO, which knows how to read and write contacts in an XML file instead of a RDBMS. SQLMapContactDAO is an implementation class that knows how to interact with the CONTACT table using SQL Maps as its persistence framework. Inside your application, you ask the DAO framework for an implementation of ContactDAO for XML, and it will provide you with an XMLContactDAO object. Also, the DAO framework provides you with a uniform interface to handle transaction management, irrespective of what persistence mechanism you use. It will also take care of the low-level details of connection management and initializing persistence frameworks."
"Currently, the vast majority of Spring documentation recommends using Hibernate to infuse your Spring application with a data-persistence layer. While Hibernate is certainly an excellent technology, it is not always the right choice. Fortunately, Spring empowers developers with the ability to easily switch between component technologies, and the persistence layer is no exception. This article explores a lesser-known Java persistence solution?iBATIS, describing the situations in which it shines and actually may be a superior technology to Hibernate for your Spring development."
"There is an object relational mapper out there that is a hidden gem. Instead of creating a full domain model, its job is to map Java objects directly to SQL statements. This framework is called iBatis, and its goal is to implement 80% of the JDBC boilerplate code you would otherwise have to do yourself. In addition, it provides a simple mapping and API layer that lets developers quickly develop data access code."
"A JavaBean is passed to this SQL Maps statement. The bean's properties are referenced with the syntax #{property}#. The executeUpdate method is used to insert, update, or delete from a database."
"The iBATIS database-mapping framework -- a popular Java framework for object-relational (OR) mapping -- is now an Apache open source project. This tutorial is the first in a three-part series demonstrating how to combine Apache Derby's power as a small-footprint embeddable database with iBATIS and use this combination to improve persistence in your database-driven Java applications. In Part 1, you learn about iBATIS's advantages as a persistence mechanism and focus on the iBATIS Data Mapper framework."