`
吕金含
  • 浏览: 87805 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

MyBatis与mysql一对一以及多对多查询

 
阅读更多
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ask.mapper.OrderMapper">
<!-- 订单 -->
<resultMap type="com.ask.pojo.Order" id="order1">
<id column="id" property="id"/>
<result column="user_id" property="user_id"/>
<result column="number" property="number"/>
<result column="createTime" property="createTime"/>
<result column="note" property="note"/>
<!-- 一对一关系映射 -->
<association property="user" javaType="com.ask.pojo.User">
<id column="id" property="id"/>
<result column="username" property="username"/>
<result column="address" property="address"/>
</association>

</resultMap>
<!-- 订单多对多 -->
<resultMap type="com.ask.pojo.Order" id="order2" extends="order1">
<!-- <id column="id" property="id"/>
<result column="user_id" property="user_id"/>
<result column="number" property="number"/>
<result column="createTime" property="createTime"/>
<result column="note" property="note"/>
<association property="user" javaType="com.ask.pojo.User">
<id column="id" property="id"/>
<result column="username" property="username"/>
<result column="address" property="address"/>
</association> -->
<!-- 多对多关系 -->
<collection property="orderdetails" ofType="com.ask.pojo.Orderdetail">
<id column="orderdetail_id" property="id"/>
<result column="items_id" property="items_id"/>
<result column="items_num" property="items_num"/>
</collection>

</resultMap>

<select id="getOrderAndUser" resultMap="order1">
SELECT
orders.*,
user.username,
user.address
FROM
orders, user
WHERE orders.user_id = user.id
</select>

<select id="getOrderAndUser1" resultMap="order2">
SELECT
orders.*,
user.username,
user.address,
orderdetail.id orderdetail_id,
orderdetail.items_id,
orderdetail.items_num
FROM
orders,USER,orderdetail

WHERE orders.user_id = user.id
AND orders.id = orderdetail.orders_id
</select>
</mapper>
分享到:
评论

相关推荐

    myBatis一对一和一对多

    与一对一类似,需要在Mapper XML文件中定义查询语句,并配置一对多的关联。 1. **配置XML映射文件**: 使用`&lt;collection&gt;`标签,`property`表示JavaBean中的集合属性名,` ofType`指明集合中元素的类型,`select`...

    mybatis连接MySQL8出现的问题解决方法

    在使用MyBatis连接MySQL8时,执行到数据库查询前均正常,但进行查询时,便卡主没有反应了。设置了日志、try catch等也不报错,页面就在那一直转。之前MyBatis自动生成的代码都是正常的,但是在测试类中使用...

    mybatisTest_mybatismysql多线程_MYSQL_

    标题 "mybatisTest_mybatismysql多线程_MYSQL_" 暗示了这是一个关于使用MyBatis框架在MySQL数据库上进行多线程性能测试的项目。MyBatis是一个流行的持久层框架,它允许开发者将SQL语句与Java代码直接关联,提供了更...

    Mybatis实现一对一关联查询(Mysql数据库)

    本主题将详细探讨如何在Mybatis中实现一对一(1-1)的关联查询,以User用户表和User_Card身份证表为例。这两个表之间存在一对一的关系,意味着每个用户都对应一个且仅有一个身份证信息。 首先,我们需要理解Mybatis...

    springboot创建集成的demo,pagehelper分页插件,mybatis集成mysql的一对多,多对多,Swagge

    本项目是基于Spring Boot创建的一个集成DEMO,主要涵盖了PageHelper分页插件、MyBatis与MySQL的一对多、多对多关系映射以及Swagger的API文档生成工具,旨在提供一个快速开发的基础模板。 首先,我们来讨论...

    mybatis+mysql驱动.rar

    标题中的"mybatis+mysql驱动.rar"表明这是一个包含MyBatis框架与MySQL数据库驱动的资源包。MyBatis与MySQL的结合使用,使得开发者能够更高效地处理数据库操作,尤其是在大型项目中。 描述中提到的是两个不同版本的...

    springmvc+mybatis+mysql

    标题 "springmvc+mybatis+mysql" 描述的是一个经典的Java Web开发技术栈,它将Spring MVC作为前端控制器,MyBatis作为持久层框架,MySQL作为数据库存储。这个组合广泛应用于许多企业级应用中,提供了高效、灵活且可...

    Spring+Mybatis+mysql简单的Student增删改查

    标题 "Spring+Mybatis+mysql简单的Student增删改查" 提到的是一个使用Spring MVC、MyBatis和MySQL数据库实现的基础Web应用示例,主要涵盖了数据操作的核心功能:增(添加)、删(删除)、改(修改)和查(查询)。...

    Mybatis破MySql8小时断线问题1

    标题 "Mybatis破MySql8小时断线问题1" 指的是在使用Mybatis框架与MySQL数据库交互时遇到的一个常见问题,即由于MySQL数据库的连接超时机制导致的8小时断线。描述中提到,当数据库连接闲置时间超过MySQL默认设定的8...

    mybatis 连接mysql数据库时所需所有jar包

    在Java开发中,MyBatis是一个非常流行的持久层框架,它简化了数据库操作与Java对象之间的映射。本文将详细讲解如何使用MyBatis连接MySQL数据库,并介绍在该过程中所需的jar包及其作用。 首先,我们要了解MyBatis的...

    Mybatis,mysql Jar包

    Mybatis 是一个流行的Java持久层框架,它简化了与数据库的交互,使开发人员能够更加专注于SQL查询的编写,而不必处理复杂的JDBC代码。在Java应用中,Mybatis通过XML或注解的方式配置和映射原生信息,将接口和Java的...

    Spring Boot + MyBatis + MySQL

    Spring Boot + MyBatis + MySQL 是一个常见的技术栈组合,广泛应用于现代Java Web应用程序的开发。这个组合提供了高效、简洁的开发体验,使得开发者能够快速构建功能完备的应用系统。下面将详细阐述这三个技术的核心...

    springboot+mybatis+mysql+layUI+thymeleaf实现对学员信息的增删改查

    在本项目中,"springboot+mybatis+mysql+layUI+thymeleaf实现对学员信息的增删改查" 是一个典型的Web应用程序开发案例,涵盖了多种技术栈的综合运用。下面将详细阐述这些技术及其在项目中的作用。 1. SpringBoot: ...

    mybatis 一对多多对多案例详解

    1、首先 准备sql 数据 user(用户表) role(角色表) 一个用户可以对用多个角色(老师,爸爸),一个角色可以被不同的用户所拥有 2、建立maven 工程 导入相关依赖 ,mybatis,mysql,junit,log4j; 3、建立实体类User和Role...

    Spring+Mybatis+Mysql项目框架

    本项目框架“Spring+Mybatis+Mysql”就是一种常见的、高效的Java Web开发组合,适用于初学者和专业人士进行学习和参考。下面将详细讲解这个框架的核心组成部分及其作用。 1. **Spring框架**:Spring是一个开源的...

    Mybatis实现一对一,一对多数据插入数据实验报告.docx

    【Mybatis实现一对一,一对多数据插入数据...通过这个实验报告,我们可以了解到Mybatis是如何处理一对一和一对多关系的,以及在实际操作中需要注意的关键点,这对于理解和应用Mybatis进行数据操作具有重要的指导意义。

    通用mybatis-MySQL增删改查CRUD源码

    MyBatis是一个基于Java的持久层框架,它简化了对JDBC的直接操作,通过XML或注解的方式将SQL与Java代码绑定,避免了手动设置参数以及获取结果集的烦恼。MyBatis的核心组件包括SqlSessionFactory、SqlSession和Mapper...

    Java+Springboot+Mybatis+Mysql+Bootstrap+Maven实现网上商城系统

    本项目是一个基于Java技术栈,使用SpringBoot、Mybatis、MySQL数据库、Bootstrap前端框架和Maven构建工具实现的网上商城系统。以下将详细介绍这个系统的关键技术及其应用。 **1. Java**: 作为后端开发的主要语言,...

    JAVA接口自动化测试MyBatis+MySQL实现用例管理

    MyBatis作为一个轻量级的持久层框架,与MySQL数据库结合,可以高效地处理数据操作。本教程将深入探讨如何利用这些技术实现接口自动化测试用例的管理。 首先,我们要理解接口自动化测试的基本概念。接口自动化测试...

    springMVC+MyBatis+MySql的整合实例

    通过这个实例,你可以深入理解如何在实际项目中结合使用SpringMVC、MyBatis和MySQL,这对提升你的开发技能和解决问题的能力大有裨益。在实践中不断尝试和优化,你会发现这个架构能有效提高开发效率,降低维护成本。

Global site tag (gtag.js) - Google Analytics