最佳维护的一个项目使的是ibatis框架,在闲暇之余将手头的开发手册和平时开发的理解做一下总结,言归正传。
- 简介
使用 SQL Map,能够大大减少访问关系数据库的代码。SQL Map 使用简单的 XML 配 置文件将 Java Bean 映射成 SQL 语句,对比其他的数据库持续层和 ORM 框架(如 JDO 的 实现,Hibernate 等),SQL Map 最大的优点在于它简单易学。要使用 SQL Map,只要熟悉 Java Bean,XML 和 SQL,就能使您充分发挥 SQL 语句的能力。总之,ibatis是一个SQL Mapping,简单易用,方便sql调优,优化系统性能。
- SQL Maps
SQL Map 的概念
SQL Map API 让开发人员可以轻易地将 Java Bean 映射成 PreparedStatement 的输入参数 和 ResultSet 结果集。开发 SQL Map 的想法很简单:提供一个简洁的架构,能够用 20%的代 码实现 80%JDBC 的功能。
SQL Map 如何工作?
SQL Map 提供了一个简洁的框架,使用简单的 XML 描述文件将 Java Bean,Map 实现 和基本数据类型的包装类(String,Integer 等)映射成 JDBC 的 PreparedStatement。以下流 程描述了 SQL Maps 的高层生命周期:
将一个对象作为参数(对象可以是 Java Bean,Map 实现和基本类型的包装类),参数对 象将为 SQL 修改语句和查询语句设定参数值。
1) 执行 mapped statement。这是 SQL Maps 最重要的步骤。SQL Map 框架将创建一个 PreparedStatement 实例,用参数对象为 PreparedStatement 实例设定参数,执行 PreparedStatement 并从 ResultSet 中创建结果对象。
2) 执行 SQL 的更新数据语句时,返回受影响的数据行数。执行查询语句时,将返回 一个结果对象或对象的集合。和参数对象一样,结果对象可以是 Java Bean,Map 实现和基本数据类型的包装类。
下图描述了以上的执行流程:
- 搭建开发环境
安装 SQL Maps 很简单,只要把相关的 JAR 文件复制到类路径下即可。类路径或者是 JVM 启动是指定的类路径(java 命令参数),或者是 Web 应用中的/WEB-INF/lib 目录。Java 类路径的详尽讨论超出了本文的范围,如果您是 Java 的初学者,请参考以下的资源:
文件名
描述
是否必需
ibatis-common.jar
IBATIS 公用的工具类
是
ibatis-sqlmap.jar
IBATIS SQL Maps 框架
是
ibatis-dao.jar
IBATIS DAO 框架
否