问题解决:java.lang.IllegalArgumentException: Could not obtain required identifier from entity看看怎么解决把~

0x00 概述

在项目开发中,采用Mongo存储,使用MongoRepository进行数据查询,数据库对应的实体如下:

public class Test{
     

    private Object o1;

    private Object o2;
}
0x01 问题现象

在业务查询中,数据查询正常,但是调delete方法时报了如下所示的错误:

java.lang.IllegalArgumentException: Could not obtain required identifier from entity 

经过排查,得知查询出来的数据未带Id属性,无法删除,由于开始使用的是Mongo自带的ID,未考虑自定义ID属性,所以查询未带Id导致删除出错。

0x001 解决办法

在原来的删除的实体类上加上ID属性,即可,如下:

public class Test{
     
	@Id
	private String id;

    private Object o1;

    private Object o2;
}

你可能感兴趣的:(Bug程序员之路,mongo,参数异常)