当前使用版本(必填,否则不予处理)

3.3.2

该问题是如何引起的?(确定最新版也有问题再提!!!)

通用查询slectById 接收对象为数据库对应对象,我写了一个实现类 继承原生对象接收,原生类里有字段会报错。

报实现类字段映射不上

insert用实现类不报错

应该是没有验证@tablefield注解吧,好像可以优化一下

感谢大佬

重现步骤(如果有就写完整)

如上

报错信息

如上

Comment From: miemieYaho

啊?

Comment From: Nineee

啊?

就是我写了个实现类 继承原生数据库映射对象 继承类里有字段 selctById 默认带出了继承类对象 报字段对应不上 insert用继承类没问题 😂

Comment From: miemieYaho

你写个demo看看

Comment From: Nineee

你写个demo看看

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Student{

    //加的字段
    private String sex;

    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    @ApiModelProperty(value = "")
    @TableField("name")
    private String name;

    @TableField("age")
    private String age;
}

public void select4() {
        Student student = new Student();
        student.setName("test");
        student.setAge("18");
        //student.setSex("女");
        //插入:sex有值会报数据库无sex字段;无值会插入成功
        int insert = studentMapper.insert(student);
        System.out.println(insert);
        //查询:sex有值和无值都会报数据库无sex字段
        Student student1 = studentMapper.selectById(1);
        System.out.println(GsonUtil.toJson(student1));
    }
试了一下是数据库对应类额外加字段会有问题,插入额外字段空值可以 查询都不行

Comment From: miemieYaho

不是数据库字段的自己加注解排除