mybatis關係對映之一對多和多對一

2021-06-25 08:09:34 字數 1874 閱讀 1946

一. 簡介:

本例項使用顧客和訂單的例子做說明: 

乙個顧客可以有多個訂單, 乙個訂單只對應乙個顧客

二. 例子:

1. **結構圖:

2. 建表語句:

create database test;  

use test;

create table person(

personid varchar(36) primary key,

personname varchar(64),

personaddress varchar(128),

persontel varchar(11)

);create table orders(

orderid varchar(36) primary key,

ordernumber varchar(20),

orderprice int,

pid varchar(36)

);insert into person values('001', 'jack', 'wuhan', '1234567');

insert into orders values('o_00001', '00001', 100, '001');

insert into orders values('o_00002', '00002', 200, '001');

select p.*, o.*

from person p

join orders o on (p.personid=o.pid)

where p.personid = '001'

3. 顧客實體:

/**

* 客戶實體

*/public class person ";

}}

// 省略getter和setter方法

4. 訂單實體:

/**

* 訂單實體

*/public class order ";

}}

// 省略getter和setter方法

5. 一對多實體配置: person.xml

<?xml version="1.0" encoding="utf-8" ?>

select p.*, o.* from person p, orders o where p.personid = o.pid and p.personid = #

6. 多對一實體配置:

<?xml version="1.0" encoding="utf-8" ?>

select p.*, o.* from person p, orders o where p.personid = o.pid and o.orderid = #

7. 全域性配置檔案: sqlmapconfig.xml

<?xml version="1.0" encoding="utf-8" ?>

8. 測試檔案:

/**

* 測試一對多和多對一

*/public class mybatistest

@test//一對多關聯查詢

public void selectpersonbyid()throws exception

@test//多對一關聯查詢

public void selectorderbyid()throws exception

}

mybatis關係對映之一對多和多對一

一.簡介 本例項使用顧客和訂單的例子做說明 乙個顧客可以有多個訂單,乙個訂單只對應乙個顧客 二.例子 1.結構圖 2.建表語句 create database test use test create table person personid varchar 36 primary key,pers...

mybatis關係對映之一對多和多對一

一.簡介 本例項使用顧客和訂單的例子做說明 乙個顧客可以有多個訂單,乙個訂單只對應乙個顧客 二.例子 1.結構圖 2.建表語句 create database test use test create table person personid varchar 36 primary key,pers...

mybatis關係對映之一對多和多對一詳解

具體的使用關係我們就用乙個例子來說明 乙個顧客可以有多個訂單,乙個訂單只對應乙個顧客 1 實體類 客戶實體 public class person 訂單實體 public class order 一對多實體配置 person.xml select p.o.from person p,orders o...