博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis 3.5.0版本(二)
阅读量:7007 次
发布时间:2019-06-27

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

hot3.png

一对一

扩展

创建Orders的扩展类OrdersExtend,添加要查找的user表里的字段

package com.company.model;public class OrdersExtend extends Orders {    private String username;    private String address;    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public String getAddress() {        return address;    }    public void setAddress(String address) {        this.address = address;    }    @Override    public String toString() {        return "OrdersExtend{" +                "username='" + username + '\'' +                ", address='" + address + '\'' +                '}' + super.toString();    }}

OrdersMapper.xml

@Test    public void func8() throws IOException {        InputStream inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        SqlSession session = sessionFactory.openSession();        OrdersMapper ordersMapper = session.getMapper(OrdersMapper.class);        OrdersExtend order = ordersMapper.getOrderById(3);        // OrdersExtend{username='王五', address='null'}Orders{id=3, user_id=1, number='1000010', createtime=Wed Feb 04 13:22:35 CST 2015, note='null'}    }

模型

模型Orders里添加User属性

@Test    public void func8() throws IOException {        InputStream inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        SqlSession session = sessionFactory.openSession();        OrdersMapper ordersMapper = session.getMapper(OrdersMapper.class);        Orders order = ordersMapper.getOrderById2(3);        // Orders{id=0, user_id=0, number='null', createtime=null, note='null', user=User{id=1, username='王五', sex='null', birthday=null, address='null'}}    }

一对多

模型Orders里添加OrderDetail属性 

private List
orderDetails;

OrdersMapper.xml

多对多

UserMapper.xml

@Test    public void func() throws IOException {        InputStream inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        SqlSession session = sessionFactory.openSession();        UserMapper userMapper = session.getMapper(UserMapper.class);        List
users = userMapper.getUserAndOrder(); for (User user : users) { System.out.println(user); for (Orders order : user.getOrdersList()) { System.out.println(order); for (OrderDetail orderDetail : order.getOrderDetails()) { System.out.println(orderDetail + ":" + orderDetail.getItems()); } System.out.println("==============="); } } }

懒加载

OrdersMapper.xml

SqlMapConfig.xml

@Test    public void func() throws IOException {        InputStream inputStream = Resources.getResourceAsStream("SqlMapConfig.xml");        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);        SqlSession session = sessionFactory.openSession();        OrdersMapper ordersMapper = session.getMapper(OrdersMapper.class);         List
orders = ordersMapper.getOrderAndUserByLazyLoading(); for (Orders order : orders) { System.out.println(order); System.out.println(order.getUser()); } }

 

转载于:https://my.oschina.net/gwlCode/blog/3035205

你可能感兴趣的文章
Mysql is null 索引
查看>>
如何查询mysql中是否表被锁
查看>>
tomcat相关配置技巧梳理
查看>>
leetcode关于数组的问题
查看>>
Linux echo 显示内容颜色
查看>>
WPF获取外部EXE图标最简单的方法
查看>>
Linux环境编写脚本安装配置JDK,Tomcat,含Tomcat自启动
查看>>
jz2440-uboot-201204版本移植【学习笔记】【原创】
查看>>
影子系统密码忘记
查看>>
windows下简单验证码识别——完美验证码识别系统
查看>>
Centos使用LVS+keepalive 搭建集群原理详解
查看>>
设计模式(33)-----行为型模式-----访问者设计模式
查看>>
模块与联系的度量(职责与协作的度量):内聚与耦合
查看>>
IBM MQ常用命令
查看>>
PIC单片机与MCS-51系列单片机的区别
查看>>
Boot Loader的启动流程和开发经验总结
查看>>
嵌入式BootLoader技术内幕(三)
查看>>
vivi分区问题,及移植时需要修改的地方(转)
查看>>
Win7下Eclipse中文字体太小
查看>>
中介者模式
查看>>