为什么mybatis执行sql后,映射的结果变少了

首先,同一条sql,在数据库中执行,和在项目中执行,结果不一样。idea打印的结果,显示的条数是正常的。但list里的结果更少了。
这是因为映射的问题。我之前的映射配置如下:

<resultMap type="com.server.***.NoticeVO" id="NoticeVO">
        <result property="projectName" column="project_name"/>
        <result property="sectionName" column="section_name"/>
        <association property="notifyRecord" javaType="com.server.***.model.NotifyRecord">
            <result property="id" column="id"/>
            <result property="title" column="title"/>
            <result property="deleted" column="deleted"/>
        </association>
    </resultMap>

内容不是关键,关键是我并没有设置映射主键,所以在映射的时候,mybatis会把一些内容差不多(自行摸索)的映射成一条记录。所以最后结果变少了。现在改一下:

 <resultMap type="com.server.***.NoticeVO" id="NoticeVO">
 			 <id column="id" property="notifyId"/>
            <result property="projectName" column="project_name"/>
            <result property="sectionName" column="section_name"/>
            <association property="notifyRecord" javaType="com.server.***.model.NotifyRecord">
                <result property="id" column="id"/>
                <result property="title" column="title"/>
                <result property="deleted" column="deleted"/>
            </association>
        </resultMap>

ok。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值