这篇文章写了以下几个简单的例子,用来说明MyBatis多标联查基本语法
1.sql片段的用法
2.一对多查询
3.多条sql的一对多查询
4.多对一查询
5.多条sql一对多查询
6、多对多查询
这里沿着接口→小配置的路线写了,测试类就是遍历输出结果:
一、接口:
1 package cn.sohappy.acourses.course0921; 2 3 import cn.sohappy.acourses.bean.BillManyToOne; 4 import cn.sohappy.acourses.bean.UserOneToMany; 5 import cn.sohappy.bean.Smbms_user; 6 7 import java.util.List; 8 9 public interface IUserDAO { 10 //01.sql片段,查询所有user 11 List<Smbms_user> findAll(); 12 //02.oneToMany,传入user,返回包含账单信息的user 13 UserOneToMany getUserOneToManyBills(UserOneToMany user); 14 //03.oneToMany,多条sql查询,传入user,返回包含账单信息的user 15 UserOneToMany getUserOneToManyBillsMultiSQL(UserOneToMany user); 16 //04.manyToOne,传入bill,返回包含用户信息的bill 17 BillManyToOne getBillManyToOneUser(BillManyToOne bill); 18 //05.manyToOne,多条sql查询,传入bill,返回包含用户信息的bill 19 BillManyToOne getBillManyToOneUserMultiSQL(BillManyToOne bill); 20 }
二、小配置
先实现第一个方法
1、List<Smbms_user> findAll();查询所有user的编号,名字,密码
小配置的配置头
<?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="cn.sohappy.acourses.course0921.IUserDAO"> <!--此处是代码--> </mapper>