MongoDbSpring Boot jpa @Aggregation _id反序列化问题

fnatzsnv  于 2023-02-03  发布在  Spring
关注(0)|答案(1)|浏览(128)

下面的聚合总是产生类似于. "_id": { "timestamp": 1675104059, "date": "2023-01-30T18:40:59.000+00:00" },的_id,我需要这样的:"_id": "63d80f2ddf20b2268a986dbf"
@Aggregation(pipeline = {"{'$match': {'userId': '?0'}}","{'$project': {'allEventsOfUser': 1}}","{'$unwind': {'path': '$allEventsOfUser'}}","{'$match': {'allEventsOfUser.date': {'$gte': ?1, '$lte': ?2}}}"}) List<?> findByUserIdAndDateRange(String name, Date dateStart, Date dateEnd);
我不明白为什么聚合会产生不同的结果。我已经尝试了JsonIgnore的所有变体,当添加到字段时,它什么也不做,添加到setter或getter也不做。有人能帮帮我吗,它搞砸了我的整个更新流程,我需要实际的id,而不是一些无用的对象。
public class EventItem { @Id public String _id;
它和聚合有关,但是我是mongodb的新手,我不知道如何阻止它。非常感谢任何帮助我的人!

ruarlubt

ruarlubt1#

我已经找到了答案,我不知道如何编辑我自己的职位,所以任何人坚持这一点,请阅读和保存您的时间!您需要指定的id类型,@字段(targetType = FieldType.STRING)公共字符串id;我不知道为什么这与@Aggregation注解断开,相同的API与不同的查询(如find all)没有问题。

相关问题