您当前的位置: 首页 >  mybatis

杨林伟

暂无认证

  • 3浏览

    0关注

    3337博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

33MyBatis - 关联查询(一对多查询)

杨林伟 发布时间:2019-04-08 10:43:42 ,浏览量:3

MyBatis一对多查询案例 商品订单数据模型

在这里插入图片描述

一对多查询

案例:查询所有用户信息及用户关联的订单信息。 用户信息和订单信息为一对多关系。

sql语句:

SELECT
	u.id,
	u.username,
	u.birthday,
	u.sex,
	u.address,
	o.id oid,
	o.number,
	o.createtime,
	o.note
FROM 
`user` u
LEFT JOIN `order` o 
ON u.id = o.user_id
修改pojo类

在User类中加入List orders属性,如下图: 在这里插入图片描述

Mapper.xml

在UserMapper.xml添加sql,如下:


	
	
	
	
	

	
	
		
		
		
		
		
	




	SELECT
	u.id,
	u.username,
	u.birthday,
	u.sex,
	u.address,
	o.id oid,
	o.number,
	o.createtime,
	o.note
	FROM
	`user` u
	LEFT JOIN `order` o ON u.id = o.user_id

Mapper接口

编写UserMapper接口,如下图: 在这里插入图片描述

测试方法

在UserMapperTest增加测试方法,如下

@Test
public void testQueryUserOrder() {
	// mybatis和spring整合,整合之后,交给spring管理
	SqlSession sqlSession = this.sqlSessionFactory.openSession();
	// 创建Mapper接口的动态代理对象,整合之后,交给spring管理
	UserMapper userMapper = sqlSession.getMapper(UserMapper.class);

	// 使用userMapper执行根据条件查询用户
	List list = userMapper.queryUserOrder();

	for (User u : list) {
		System.out.println(u);
	}

	// mybatis和spring整合,整合之后,交给spring管理
	sqlSession.close();
}
效果

测试效果如下图: 在这里插入图片描述

关注
打赏
1662376985
查看更多评论
立即登录/注册

微信扫码登录

0.2722s