高级映射-一对多查询

1.需求
查询订单及订单明细的信息。

2.思路
使用resultType将上边的 查询结果映射到pojo中,订单信息的就是重复。
orders.java类中添加List orderDetails属性。
最终会将订单信息映射到orders中,订单所对应的订单明细映射到orders中的orderDetails属性中。
映射成的orders记录数为两条(orders信息不重复)
每个orders中的orderDetails属性存储了该 订单所对应的订单明细。

  1. orders.java类中添加ListOrderdetailBean属性,并生成get和set方法

  2. OrdersMapperCustom.xml




    
    
        
        
        
        
        
        
        
        
        
            
            
            
            
            
        
    
    
    
        
        


        
        
            
            
            
            
            
        
    
    
    
    
    
    
    

  1. OrdersMapperCustom.java接口
public List findOrdersAndOrderdetailResultMap() throws Exception;
  1. OrdersMapperTest.java 测试
@Test
    public void findOrdersAndOrderdetailResultMap() throws Exception {
        SqlSession sqlSession = sqlSessionFactory.openSession();
        OrdersMapperCustom ordersMapperCustom = sqlSession.getMapper(OrdersMapperCustom.class);
        List ordersBeans = ordersMapperCustom.findOrdersAndOrderdetailResultMap();
        System.out.println(ordersBeans);
    }
高级映射-一对多查询_第1张图片
运行结果

你可能感兴趣的:(高级映射-一对多查询)