对象映射就这么简单
类别: JAVA教程
像 Hibernate 和 OJB 之类的对象映射工具都非常风行――并且应当如此。这些工具将 JDBC 从 JDBC 程序设计中分离出来,从而使得编写数据库访问代码如同处理文件 I/O 一样简单。
最近一个有影响力的对象映射工具是iBATIS-Database Layer。iBATIS 不同于其它对象映射工具的地方在于它不是将对象映射到数据库,而是将 SQL 映射为对象,反之将对象映射为 SQL。简单的映射基础使得具有 Java 和 SQL 经验的开发人员很容易开始使用 iBATIS。
iBATIS-Database Layer 的核心是 XML 文件,例如:
<mapped-statement name="loadEmployee" result-class="tips.Employee">
select
emp_id as id,
last_name as lastName,
first_name as firstName,
title as title,
from employees
where emp_id = #value#
</mapped-statement>
创建一个 Employee 对象的动作直接映射到一个 SQL 语句。
创建能够执行 SQL 的对象的方式如下:
public Employee getEmployeeById(Long id) {
Employee employee = (Employee) sqlMap.executeQueryForObject("loadEmployee",
id);
}
iBATIS-Database Layer 支持对各种手工数据库操作动作的映射:插入、更新及删除。它还具有其它对象映射工具的优点,比如说多数据库支持、数据源配置、将依赖对象映射为属性等等。使用 iBATIS 的另一个优点是其学习曲线比较温和,因为你已经了解了SQL,这就相当于了解了 iBATIS 的一半。然而,有其好处的同时也会有其(最起码是警告级的)坏处。
因为你是自己编写 SQL,所以你可能会在 SQL 中使用针对某个特定数据库的优化技术。使用针对特定数据库的 SQL 意味着如果你决定更换数据库那么你就必须移值你的映射。
即使有这种警告,iBATIS-Database Layer 依然值得考虑。自己衡量一下,看看这个框架对你是否有所帮助。
最近一个有影响力的对象映射工具是iBATIS-Database Layer。iBATIS 不同于其它对象映射工具的地方在于它不是将对象映射到数据库,而是将 SQL 映射为对象,反之将对象映射为 SQL。简单的映射基础使得具有 Java 和 SQL 经验的开发人员很容易开始使用 iBATIS。
iBATIS-Database Layer 的核心是 XML 文件,例如:
<mapped-statement name="loadEmployee" result-class="tips.Employee">
select
emp_id as id,
last_name as lastName,
first_name as firstName,
title as title,
from employees
where emp_id = #value#
</mapped-statement>
创建一个 Employee 对象的动作直接映射到一个 SQL 语句。
创建能够执行 SQL 的对象的方式如下:
public Employee getEmployeeById(Long id) {
Employee employee = (Employee) sqlMap.executeQueryForObject("loadEmployee",
id);
}
iBATIS-Database Layer 支持对各种手工数据库操作动作的映射:插入、更新及删除。它还具有其它对象映射工具的优点,比如说多数据库支持、数据源配置、将依赖对象映射为属性等等。使用 iBATIS 的另一个优点是其学习曲线比较温和,因为你已经了解了SQL,这就相当于了解了 iBATIS 的一半。然而,有其好处的同时也会有其(最起码是警告级的)坏处。
因为你是自己编写 SQL,所以你可能会在 SQL 中使用针对某个特定数据库的优化技术。使用针对特定数据库的 SQL 意味着如果你决定更换数据库那么你就必须移值你的映射。
即使有这种警告,iBATIS-Database Layer 依然值得考虑。自己衡量一下,看看这个框架对你是否有所帮助。
- 上一篇: 更改 Netbeans 中选项卡的名称
- 下一篇: 传递原始类型参数给方法
-= 资 源 教 程 =-
文 章 搜 索