iBATIS Design Philosophies:
- Simplicity: iBATIS is widely regarded as being one of the simplest persistence frameworks available today.
- Fast Development: iBATIS's philosophy is to do all it can to facilitate hyper-fast development.
- Portability: iBATIS can be implemented for nearly any language or platform like Java, Ruby, and C# for Microsoft .NET.
- Independent Interfaces: iBATIS provides database-independent interfaces and APIs that help the rest of the application remain independent of any persistence-related resources,
- Open source: iBATIS is free and an open source software.
Advantages of IBATIS
- Suppports Stored procedures: iBATIS encapsulates SQL in the form of stored procedures so that business logic is kept out of the database, and the application is easier to deploy and test, and is more portable.
- Supports Inline SQL: No precompiler is needed, and you have full access to all of the features of SQL.
- Supports Dynamic SQL: iBATIS provides features for dynamically building SQL queries based on parameters.
- Supports O/RM: iBATIS supports many of the same features as an O/RM tool, such as lazy loading, join fetching, caching, runtime code generation, and inheritance
iBATIS vs Hibernate:
- You want to create your own SQL's and are willing to maintain them.
- your environment is driven by relational data model.
- you have to work existing and complex schema's.
- Your environment is driven by object model and wants generates SQL automatically.
- iBATIS is:
- Faster development time
- Much smaller in package size
- Generates SQL for you which means you don't spend time on SQL
- Provides much more advance cache
- Highly scalable