java在mysql中查询内容无法塞入实体类中,报错 all elements are null

目录

  • 一、问题描述
  • 二、解决方案

一、问题描述

java项目中整体配置了mysql的驼峰式字段匹配规则。

mybatis.configuration.map-underscore-to-camel-case=true

由于项目需求,需要返回字段为file_id,file_url,并且放入实体类中,实体类如下:

private Integer file_id;//文件id
private String file_url;//文件路径

sql如下:

<select id="selectFileIdListByClass" resultMap="dto.face.dto">
		select a.file_id,a.file_url from
		from file_info a
</select>

在java查询过程中,集合显示长度为3,但是内容为 all elements are null

在这里插入图片描述

二、解决方案

思路:创建一个结果映射,指明sql中的字段映射到实体类的字段属性,在查询中使用这个结果映射

步骤
创建名为 “BatchPhotoCompareDtoMap” 的结果映射

<resultMap id="BatchPhotoCompareDtoMap" type="dto.face.dto">
    <result column="file_id" jdbcType="INTEGER" property="file_id"/>
    <result column="file_url" jdbcType="VARCHAR" property="file_url"/>
</resultMap>

使用这个映射,原来的sql改为如下:

<select id="selectFileIdListByClass" resultMap="BatchPhotoCompareDtoMap">
		select a.file_id,a.file_url from
		from file_info a
</select>

修改后查询成功
java在mysql中查询内容无法塞入实体类中,报错 all elements are null_第1张图片

你可能感兴趣的:(java,java,mysql,开发语言)