MyBatis嵌套语句查询(resultMap的使用)

前言

MyBatis主流框架,嵌套语句查询的使用是经典场景,这篇主要说一下mybatis的嵌套语句查询,希望能帮助到需要的童鞋们。觉得有问题的童靴们,可以提出来,大家共同进步。觉得写的差的童靴,也希望不要骂,全世界的程序员,我觉得喜欢写分享的人,不多。。。。。。

开始啦

1、场景

先说明一下我的模拟场景:地区查询,省和市,先查所有省信息,再根据省的code码查询市信息,相当于一对多查询

2、嵌套模块代码

    
    
        
        
        
            
            
        
    

 

参数说明

1、resultMap:

            id: resultMap块的ID

            type:返回参数类型(就是平常sql的resultType)

2、result:

            column:数据库表中的字段名称

           jdbcType:数据库字段

            property:返参名称

3、collection:

           property:需要嵌套查询的字段名称,如↓

         MyBatis嵌套语句查询(resultMap的使用)_第1张图片

            select:嵌套查询的sql语句的ID

sql查询

 1、“一”查询sql

    
    

 

返参用resultMap,它的值对应上面嵌套代码块的ID

2、“多”查询sql

    
    

 

此sql的id要对应上面的collection的select的值,至此mybatis的嵌套查询已OK,

3、resultMap的返参类型com.prereadweb.community.form.ProvinceReturnForm

@Data
public class ProvinceReturnForm {

    /* code码 */
    private String code;

    /* 省名称 */
    private String name;

    /* 市list */
    private List cityList;
}

 

4、“多”查询sql的返参类型com.prereadweb.community.form.CityReturnForm

@Data
public class CityReturnForm {

    /* code码 */
    private String code;

    /* 市名称 */
    private String cityName;

}

 

你可能感兴趣的:(mybatis)