博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mybatis - 表关联one-to-many
阅读量:6119 次
发布时间:2019-06-21

本文共 2703 字,大约阅读时间需要 9 分钟。

one to one - association ; //单对一,使用association one to many -
collection ; //单对多,使用collection

Nested results - column is not necessary ,javaType is necessary !

//使用嵌套结果,column 不是必需的,但是JavaType是必需的;

nested queries - column is necessary ,javaType is not necessary !

//使用嵌套查询,column是必需的,JavaType不是必须的,子查询自定义resultType即可!!

  1. 表结构:

    t_student 表拥有属性 class_id 对应 t_class表 t_id

clipboard.png

【1】更改Classes,添加属性

public class Classes {    private int id;    private String name;    private Teacher teacher;    private List
list; ...}

【2】嵌套结果-获取Classes,Teacher AND list

     

【3】嵌套查询–获取Classes,Teacher AND list

                  

【4】Test

  1. 获取SqlSessionFactory的工具类:
public static SqlSessionFactory getFactory(){            /* flow the src dir*/            String resource = "mybatis.xml";            /*MybatisUtils.class.getResourceAsStream(resource)----- it's wrong !!!!             * please distinguish the two up and down              * */            InputStream inputStream = MybatisUtils.class.getClassLoader().getResourceAsStream(resource);                SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream);                    return factory;        }
  1. 测试方法

    @Test   public void testSelect4(){       /*set auto commit ,which equals to the above*/       SqlSession session = MybatisUtils.getFactory().openSession(true);       String statement = "com.web.mapper.classMapper.getClass4";       /*return the effect rows*/       Classes classes = session.selectOne(statement, 1);       Teacher teacher = classes.getTeacher();       List
    list = classes.getList(); System.out.println("result.."+classes+','+classes.getClass()); System.out.println(teacher); System.out.println(list); }

result as follows :

> result..Classes [id=1, list=[Student [id=1, name=stu1], Student [id=2,> name=stu2], Student [id=3, name=stu3]], name=计算机, teacher=Teacher> [id=1, name=李明]],class com.web.model.Classes Teacher [id=1, name=李明]> [Student [id=1, name=stu1], Student [id=2, name=stu2], Student [id=3,> name=stu3]]

转载地址:http://damka.baihongyu.com/

你可能感兴趣的文章
css技巧
查看>>
Tyvj 1728 普通平衡树
查看>>
[Usaco2015 dec]Max Flow
查看>>
javascript性能优化
查看>>
多路归并排序之败者树
查看>>
java连接MySql数据库
查看>>
转:Vue keep-alive实践总结
查看>>
android studio修改新项目package名称
查看>>
深入python的set和dict
查看>>
C++ 11 lambda
查看>>
Hadoop2.5.0 搭建实录
查看>>
实验吧 recursive write up
查看>>
High-speed Charting Control--MFC绘制图表(折线图、饼图、柱形图)控件
查看>>
go test命令參数问题
查看>>
linux 搜索文本
查看>>
超实用Mac软件分享(二)
查看>>
Android JSON数据解析
查看>>
DEV实现日期时间效果
查看>>
java注解【转】
查看>>
Oracle表分区
查看>>