Mybatis返回Map的key为实体的属性,value为实体

本文详细解析了MyBatis中的resultMap配置,展示了如何映射复杂的数据结构,以及如何使用@MapKey注解将查询结果转换为Map集合,通过具体示例解释了如何实现基于日期的平均空气质量数据的查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、xml中这样写

	<resultMap id="BaseResultMap" type="com.entity.AirMonitor" >
        <result column="areaCode" property="areaCode"  />
        <result column="pm25" property="pm25" />
        <result column="pm10" property="pm10" />
    </resultMap>

    <select id="getDayMap" parameterType="java.util.Date" resultMap="BaseResultMap">
        SELECT 
            cast(avg(pm25) as decimal(18,2)) as pm25,
            cast(avg(pm10) as decimal(18,2)) as pm10
            area_code as areaCode
        FROM t_air_day_monitor day 
        WHERE monitor_time = date(#{date})
        GROUP BY point.area_code
    </select>

2、mapper中:

 	@MapKey("areaCode")
    Map<String,AirMonitorVo> getDayMap(Date date);

3、结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值