承接三,通过resultMap实现一对多。
1.在数据库中添加表t_pet,代码如下:
create table t_pet(id number(11), petname varchar2(11),userid number(11)); alter table t_pet add constraint pk_pet_id primary key(id); update t_pet set userid = '4';
2.在User类中加入对象List<Pet> pets;
3.修改配置文件User.xml,在User.xml中加入如下内容:
<!-- 一对多关联 --> <resultMap type="User" id="userResult1"> <id property="id" column="user_id" /> <result property="userName" column="user_name" /> <collection property="pets" ofType="Pet"> <id property="id" column="pet_id" /> <result property="petName" column="pet_name" /> <result property="petColor" column="pet_color" /> </collection> </resultMap> <select id="select2" parameterType="int" resultMap="userResult1"> select u.id as user_id, u.username as user_name, p.userid as pet_user_id, p.id as pet_id, p.petname as pet_name, p.petcolor as pet_color from t_user u,t_pet p where u.id = p.userid and u.id = #{id} </select>
上面<collection> 标签实现一对多的功能。
4.在Test中进行测试。
相关推荐
在"01 MyBatis入门程序-资料"中,你将找到关于这些概念的详细解释、示例代码和实践指导,帮助你快速掌握MyBatis的基本用法和核心理念。通过学习和实践,你可以熟练地利用MyBatis进行数据库操作,提升开发效率。
通过这个入门小练习,你可以熟悉 MyBatis 的基本使用,理解其核心概念,并能动手实践,为后续更复杂的项目打下坚实的基础。在实践中,不断探索 MyBatis 的高级特性,如动态 SQL、缓存、插件等,将有助于提升你的开发...
#### 三、MyBatis简介与入门 - **MyBatis定义:** MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。 - **入门指南:** - *...
#### 二、入门 - **核心对象**:每个MyBatis应用程序的核心都是`SqlSessionFactory`对象。 - **获取方式**:通过`SqlSessionFactoryBuilder`对象获取`SqlSessionFactory`实例。 #### 三、构建`SqlSessionFactory` ...
入门部分讲述了如何构建SqlSessionFactory,它是MyBatis应用程序的核心。可以通过SqlSessionFactoryBuilder构建SqlSessionFactory实例。这个构建器可以从XML配置文件或Configuration类的实例中获取。为了从XML构建...
这篇“MyBatis入门到精通”的学习资料是针对初学者设计的,旨在帮助新手快速掌握MyBatis的基本用法和高级特性。 1. **MyBatis简介** MyBatis是由Clinton Begin创建的开源项目,它是一个基于Java的持久层框架,消除...
入门 在 MyBatis 应用程序中,核心组件是 `SqlSessionFactory` 对象。`SqlSessionFactory` 可以通过 `SqlSessionFactoryBuilder` 构建出来,而后者可以从 XML 配置文件或预先配置好的 `Configuration` 类实例中...
什么是 MyBatis?\ 5 入门\ 5 从 XML 中构建 SqlSessionFactory \ 5 不使用 XML 构建 SqlSessionFactory\ 6 从 SqlSessionFactory 中获取 SqlSession\ 6 探究已映射的 SQL语句 \ 7 命名空间的一点注释 \ 8 ...
在本入门示例中,我们将了解MyBatis的基本使用流程,包括环境搭建、配置文件解析、Mapper接口定义、SQL映射文件编写、数据访问对象(DAO)实现及事务管理等关键环节。 1. **环境搭建**:首先,你需要在项目中引入...
【MyBatis入门以及提高】 在Java EE框架中,MyBatis是一个广泛使用的持久层框架,它极大地简化了原生JDBC编程的繁琐过程。MyBatis的核心在于输入映射和输出映射,以及动态SQL,这些特性使得SQL的编写和维护变得更加...
以上就是Mybatis入门的基本内容,通过这个小例子,你可以理解Mybatis如何与数据库交互,如何定义和执行SQL,以及如何处理结果映射和事务管理。随着对Mybatis更深入的学习,你会发现它在实际项目中有着广泛的应用,能...
- resultMap是MyBatis最强大的特性之一,用于描述如何将数据库结果映射到对象上。 7. 高级结果映射: - 支持复杂的高级映射,例如集合、关联、鉴别器等。 - 集合映射用于映射一对一或一对多关系。 - 关联映射...
我们可以通过`@ResultMap`注解在DAO接口方法上,指定映射文件中的结果集配置,以便MyBatis能正确地将查询结果转换为Java对象。 8. 注解方式的映射:除了使用XML文件进行映射外,MyBatis也支持使用注解在Java类和...
在`mapper.xml`文件中,`select`、`insert`、`update`、`delete`标签用于编写CRUD操作,而`resultMap`用于描述复杂的返回结果。 4. **动态SQL**:MyBatis支持动态SQL,通过`if`、`choose`(when/otherwise)、`...
在这个"Mybatis入门JavaSE案例"中,我们将深入理解Mybatis的基本配置、DAO层的注解方式以及XML配置方式。 首先,让我们来了解Mybatis的配置过程。Mybatis的配置文件(mybatis-config.xml)是整个框架的入口,它包含...
"Mybatis学习(四)解决表字段名和实体类属性名不相同的冲突.docx"可能讨论了如何处理数据库字段名与Java实体类属性名不一致的情况。Mybatis通过别名(aliases)或者注解(@Column)来实现字段映射,使得两者可以...
【标题】"第一个mybatis程序 mybatis入门" 涉及到的是MyBatis框架的基础使用,这是一个轻量级的Java持久层框架,它简化了与数据库交互的过程,提供了强大的映射功能。以下是对MyBatis入门的详细解析: 1. **MyBatis...
本入门基础案例 "mybatis入门基础案例demo" 是为了帮助初学者理解并掌握 MyBatis 的基本使用方法。在这个案例中,我们将涉及以下几个关键知识点: 1. **MyBatis 环境搭建**: - 首先需要在项目中引入 MyBatis 的 ...
【标题】:“derby+myBatis 入门” 【描述】:这篇博客文章主要介绍了如何开始使用Apache Derby数据库和MyBatis框架进行Java开发。Apache Derby是一个轻量级、嵌入式的关系型数据库,而MyBatis则是一个流行的持久层...