MyBatis一对多和多对多xml配置

<?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.ktcx.models.business.busfreighttemplate.dao.BusFreightTemplateDao"> <sql id="BaseColumn">
id,
partner_id,
create_by,
create_date,
code,
is_del,
end_update_date,
name,
type,
area,
is_default
</sql> <resultMap id="myResultMap"
type="com.ktcx.models.business.busfreighttemplate.model.BusFreightTemplate">
<id property="id" column="id"></id> <result property="partnerId" column="partnerId"/>
<result property="code" column="code"/>
<result property="partnerId" column="partnerId"/>
<result property="endUpdateDate" column="endUpdateDate"/>
<result property="name" column="name"/>
<result property="type" column="type"/>
<result property="area" column="area"/>
<result property="isDefault" column="isDefault"/> <collection property="freightProvices"
ofType="com.ktcx.models.bq.freightprovice.model.FreightProvice">
<id column="fpId" property="id"/> <result property="proviceText" column="fpProviceText"/>
<result property="code" column="fpCode"/>
<result property="increaseFee" column="fpIncreaseFee"/>
<result property="increaseNum" column="fpIncreaseNum"/>
<result property="startFee" column="fpStartFee"/>
<result property="startNum" column="fpStartNum"/>
<result property="proviceName" column="fpProviceName"/>
<result property="proviceId" column="fpProviceId"/>
<result property="shopId" column="fpShopId"/>
<result property="templateId" column="fpTemplateId"/>
</collection> </resultMap> <!--一对多的查询-->
<select id="selectTemplateAndFreight" resultMap="myResultMap">
SELECT
ft.id,
ft.partner_id AS partnerId,
ft.code ,
ft.end_update_date AS endUpdateDate,
ft.name ,
ft.type ,
ft.area ,
ft.is_default AS isDefault,
fp.id fpId,
fp.shop_id AS fpShopId ,
fp.provice_id AS fpProviceId ,
fp.provice_name AS fpProviceName ,
fp.start_num AS fpStartNum ,
fp.start_fee AS fpStartFee ,
fp.increase_num AS fpIncreaseNum ,
fp.increase_fee AS fpIncreaseFee ,
fp.code AS fpCode ,
fp.provice_text AS fpProviceText ,
fp.template_id AS fpTemplateId
FROM
(
SELECT
f.id,
f.partner_id ,
f.code ,
f.end_update_date ,
f.name ,
f.type ,
f.area ,
f.is_default ,
f.is_del,
f.create_date
FROM
bus_freight_template f
LEFT JOIN bus_freight_provice p
ON f.id = p.template_id
WHERE f.code = p.code
AND f.code = #{code}
GROUP BY f.id
LIMIT #{startPage},#{pageSize} ) ft LEFT JOIN bus_freight_provice fp
ON ft.id = fp.template_id
WHERE ft.code = fp.code
AND fp.template_id IS NOT NULL
AND ft.code = #{code}
AND fp.is_del = '0'
AND ft.is_del = '0' order by ft.create_date desc
</select> <select id="getALLTemplate" resultType="int">
SELECT COUNT(0) FROM bus_freight_template WHERE is_del = '0' AND CODE= #{code}
</select> <insert id="saveData">
insert into bus_freight_template(
<include refid="BaseColumn"/>
)
VALUES
(
#{id},
#{partnerId},
#{createBy},
#{createDate},
#{code},
#{isDel},
#{endUpdateDate},
#{name},
#{type},
#{area},
#{isDefault}
) </insert> </mapper>

MyBatis一对多和多对多xml配置的更多相关文章

  1. Java基础-SSM之mybatis一对多和多对一关系映射

    Java基础-SSM之mybatis一对多和多对一关系映射 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.准备测试环境(创建数据库表)  1>.创建customers表: ...

  2. mybatis 一对多,多对一配置

    一. 简介: 本实例使用顾客和订单的例子做说明: 一个顾客可以有多个订单, 一个订单只对应一个顾客 二. 例子: 1. 代码结构图: 2. 建表语句: CREATE DATABASE test; US ...

  3. Mybatis 代码自动生成(generatorConfig.xml配置)

    博客推荐: Mybatis最入门---代码自动生成(generatorConfig.xml配置) MyBatis Generator generatorConfig.xml配置详解 pom.xml&l ...

  4. mybatis 一对多和多对一 简单案例笔记

    以案例说明(以下案例代码都敲过验证过) 多对一(多个学生对一个老师  即学生集合中都存一个老师对象) Mybatis多对一实现方式1: //定义Student 和 Teacher 实体 @Data p ...

  5. Hibernate系列学习之(二) 多对一、一对一、一对多、多对多的配置方法

    这是近期做案件录入.java项目中体会的几点:项目理解很是深刻,和大家共勉! hihernate一对多关联映射(单向Classes----->Student) 一对多关联映射利用了多对一关联映射 ...

  6. 【转】Hibernate系列学习之(二) 多对一、一对一、一对多、多对多的配置方法

    hihernate一对多关联映射(单向Classes----->Student) 一对多关联映射利用了多对一关联映射原理 多对一关联映射:在多的一端加入一个外键指向一的一端,它维护的关系是多指向 ...

  7. Mybatis 中一对多,多对一的配置

    现在有很多电商平台,就拿这个来说吧.顾客跟订单的关系,一个顾客可以有多张订单,但是一个订单只能对应一个顾客. 一对多的顾客 <?xml version="1.0" encod ...

  8. Mybatis关联查询之一对多和多对一XML配置详解

    平时在开发过程中dao.bean和XML文件都是自动生成的,很少写XML的配置关系,今天记录一下mybatis的关联查询中的多对一和一对多的情况. 首先是有两张表(学生表Student和老师Teach ...

  9. mybatis 一对多和多对一关联查询

    首先  数据库量表之间字段关系(没有主外键) studentmajor表的id字段对应student表里major字段 两个实体类 package com.model; import java.uti ...

随机推荐

  1. ML:单变量线性回归(Linear Regression With One Variable)

    模型表达(model regression) 用于描述回归问题的标记 m 训练集(training set)中实例的数量 x 特征/输入变量 y 目标变量/输出变量 (x,y) 训练集中的实例 (x( ...

  2. layui打印表格自定义函数

    函数如下 function print (tablelayid) { var v = document.createElement("div"); var f = ["& ...

  3. C#实现任意源组播与特定源组播

    IP组播通信需要一个特殊的组播地址,IP组播地址是一组D类IP地址,范围从224.0.0.0 到 239.255.255.255.其中还有很多地址是为特殊的目的保留的.224.0.0.0到224.0. ...

  4. uniConnection断线重联(tag属性颇有深意,这样就可以在某些情况下,不用继承实现新控件就可以达到自己的目的)

    群友无法呼吸提供的,谢谢他了. http://blog.sina.com.cn/s/blog_44fa172f0102wb7h.html

  5. 用Go语言异常机制模拟TryCatch异常捕捉1

    有的同学看到Go和TryCatch一起出现,心里可能会说,难道Go语言升级了,加入了try...catch语句.哈哈,其实Go语言从创建之初就没打算加入try...catch语句,因为创建Go的那帮大 ...

  6. 安装Cloudera Impala

    安装Cloudera Impala Cloudera Impala是Cloudera Enterprise Core的开源扩展,用于快速返回查询结果. Impala作为你环境的插件,与其他组件的安装独 ...

  7. jmeter模拟spike测试(尖峰测试)

    概述 尖峰测试(Spike testing)在性能测试中属于压力测试的一个子集.指的是在某一瞬间或者多个频次下用户数和压力陡然增加的场景. 为了验证我们的网站在访问用户急剧增加的情况下,或者短时间内反 ...

  8. C# 简单TCP协议

    namespace TCPServer { class Program { static void Main(string[] args) { ;//端口 TcpClient tcpClient;// ...

  9. Scala 学习之路(十)—— 函数 & 闭包 & 柯里化

    一.函数 1.1 函数与方法 Scala中函数与方法的区别非常小,如果函数作为某个对象的成员,这样的函数被称为方法,否则就是一个正常的函数. // 定义方法 def multi1(x:Int) = { ...

  10. Spark学习之路(二)—— Spark开发环境搭建

    一.安装Spark 1.1 下载并解压 官方下载地址:http://spark.apache.org/downloads.html ,选择Spark版本和对应的Hadoop版本后再下载: 解压安装包: ...