一对多关联
<sqlMap namespace="User">
<typeAlias alias="user" type="com.ibatis.sample.User"/>
<typeAlias alias="address" type="com.ibatis.sample.Address"/>
<resultMap id="get-user-result" class="user">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="sex" column="sex"/>
<result property="addresses" column="id"
select="User.getAddressByUserId"/>
</resultMap>
<select id="getUsers"
parameterClass="java.lang.String"
resultMap="get-user-result">
<![CDATA[
select
id,sex
from t_user
where id = #id#
]]>
</select>
<select id="getAddressByUserId"
parameterClass="int"
resultClass="address">
<![CDATA[
select
address,
zipcode
from t_address
where user_id = #userid#
]]>
</select>
</sqlMap>
一对一关联
<resultMap id="get-user-result" class="user">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="sex" column="sex"/>
<result property="address" column="t_address.address"/>
<result property="zipCode" column="t_address.zipcode"/>
</resultMap>
<select id="getUsers"
parameterClass="java.lang.String"
resultMap="get-user-result">
<![CDATA[
select*
from t_user,t_address
where t_user.id=t_address.user_id
]]>
</select>
应该保证User 类中包含address和zipCode两个String型属性。
分享到:
相关推荐
### ibatis高级特性详解 #### 一、引言 Ibatis 是一款优秀的持久层框架,它简化了 Java 开发者与数据库之间的交互过程。本文将详细介绍 ibatis 的一些高级特性,包括数据关联、延迟加载、动态映射以及事务管理等...
### 三、iBatis高级用法 除了基本的查询,iBatis还支持动态SQL、批量操作、分页等功能,这些都是在实际项目中非常实用的能力。例如,动态SQL允许开发者根据不同的条件构建SQL语句,而批量操作则可以提高数据处理的...
其强大的数据管理能力、丰富的数据类型和高级的SQL特性,为开发者提供了广阔的应用空间。 三、Ibatis3与Oracle的结合 1. 数据源配置:在Ibatis3中,我们需要配置Oracle的JDBC驱动,并指定数据库连接信息,如URL、...
### ibatis高级特性 #### 动态SQL ibatis的一个强大特性是动态SQL。它允许开发者在运行时根据不同的条件构建SQL语句,从而实现更灵活的数据查询。通过使用`<if>`, `<choose>`, `<when>`, `<otherwise>`等元素,...
书中既详实地介绍了iBATIS的设计理念和基础知识,也讨论了动态SQL、高速缓存、DAD框架等高级主题,还讲解了iBATIS在实际开发中的应用。《iBATIS实战》的最后给出了一个设计优雅、层次清晰的示例程序JGameStore,该...
Ajax主要用于提升Web应用的用户体验,通过异步数据交换减少页面刷新,而iBatis则是一个优秀的持久层框架,简化了数据库操作。接下来,我们将深入探讨这两个技术的结合及其应用场景。 **Ajax** 是一种在不重新加载...
《IBATIS_IN_ACTION》是一本深度探讨iBATIS框架应用与实践的专业书籍,由Clinton Begin、Brandon Goodin和Larry Meadors共同编写。本书详细介绍了iBATIS这一流行开源框架的核心概念、工作原理以及在实际项目中的应用...
标签 "教程" 指出这是一个学习资源,可能是书籍或在线课程,旨在帮助开发者掌握iBATIS的基本用法和高级技巧。 压缩包中的文件名揭示了更具体的学习内容: 1. **spring-reference_cn.pdf**:这可能是Spring框架的...
Ibatis 实战应用** 5.1 DAO 层设计:基于 Ibatis,开发者可以创建自定义的 DAO 接口,接口方法对应 SQL 映射文件中的 SQL 语句,实现业务逻辑的解耦。 5.2 事务管理:Ibatis 提供了事务控制接口 SqlSession,可以...
总的来说,IBATIS API和开发文档是学习和使用IBATIS不可或缺的资源,它们涵盖了IBATIS的所有关键特性和用法,无论你是初学者还是有经验的开发者,都能从中受益匪浅。通过深入理解和实践,可以充分利用IBATIS的灵活性...
通过数据库准备、SQL Map 编写和 Java 代码集成,我们可以轻松地进行数据库操作,这对于初学者理解 Ibatis 的工作原理及其在实际项目中的应用非常有帮助。同时,这个实例也鼓励学习者进一步探索 Ibatis 的高级特性,...
"spring+iBatis处理1对多数据表实例"展示了如何将iBatis与Spring框架集成,实现更高级的数据操作。Spring的依赖注入可以简化iBatis的配置,而Spring的事务管理则能确保数据的一致性。1对多关系的处理通常涉及到集合...
标题 "ibatis在web工程中的应用笔记" 涉及的主要知识点是MyBatis(原名iBatis)在Web应用程序开发中的使用。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。下面将详细阐述MyBatis的基本...
Ibatis,全称MyBatis,是一个优秀的开源持久层框架,它支持定制化SQL、存储过程以及高级映射。在Java应用中,Ibatis可以帮助开发者将数据库操作与业务逻辑分离,从而简化开发工作,提高代码可读性和可维护性。 ## 1...
本文档将详细讲解iBatis的核心概念、快速入门以及高级特性。 ### iBatis 快速启动 #### 准备工作 在开始使用iBatis之前,确保你已经安装了Java运行环境,并配置了相应的JDBC驱动,这将使iBatis能够与数据库进行...
- 第一个例子:通过一个简单的CRUD操作,展示iBATIS的基本用法。 - 数据源配置:讲解如何配置数据连接字符串,连接池等。 - CRUD操作:详细解释如何使用iBATIS执行增删改查操作。 - 映射实体类:介绍如何将...
ibatis3.0(也称为MyBatis)是一个支持普通SQL查询、存储过程以及高级映射的优秀持久层框架。它消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索;它可以使用简单的XML或注解进行配置和原始映射,将接口和...
`一个简单的ibatis示例.doc`是一个基础的iBatis应用示例,通常会展示如何创建SqlMapConfig.xml配置文件,定义SQL映射文件,以及在Java代码中如何使用SqlSession进行数据库操作。通过这个例子,你可以了解到iBatis的...
- **性能敏感的应用**:在某些高性能要求的应用场景下,ibatis的高效性得到了很好的体现。 通过上述知识点的介绍,我们可以看到ibatis作为一款经典的开源插件,在数据库操作方面具有独特的优势,尤其是在那些需要...