如何使用mongoDB和spring数据在嵌入式文档中创建id

胡斯

我试图在嵌入式文档中设置一个ID。在mongoDB的下一个级别中,使用spring数据。可以说我有一个用户文档,每个用户都有多个会话(一对多),我喜欢为会话获取自动生成的唯一ID。我该怎么办?我尝试为用户和会话创建以下实体,但会话ID始终为null !,请帮助

import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;

@Document
public class User {

    @Id
    private String id;
    private String emailId;
    private String firstName;
    private String lastName;
    private ArrayList<Session> sessions;
}

public class Session {

    @Id // i like to make this id auto generated and unique
    private String id;
    private String status;
    private String title;
//assume all Args, Getters and setters are exists
布拉克

您需要手动更新此唯一ID,因为在中似乎没有自动功能可以执行此操作spring-data-mongodb

就像是;

public Integer generateUniqueId() {
    Session latestSession = sessionRepository.findTopOrderByIdDesc(); // latest session
    return Optional.ofNullable(latestSession).map(Session::getId).orElse(-1) + 1;
}

其中唯一ID只是一个递增计数器...

Session在保存之前将此值设置为新值

newSession.set(generateUniqueId());
sessionRepository.save(newSession);

欲了解更多详情,请点击这里

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用id mongodb在嵌入式文档数组中查找数据?

查询Spring Data MongoDB中嵌入式文档的数组

使用Spring Boot的MongoDB嵌入式文档

如何检索和删除嵌入式文档Spring Data MongoDB

MongoDB,如何获取刚在嵌入式文档中创建的ObjectId?

如何在嵌入式数组mongodb中查询嵌入式文档

如何在 MongoDb 中查询嵌入式文档?

如何在mongodb中搜索嵌入式文档?

使用Java在MongoDB中的嵌入式文档中索引和搜索“数组”

使用python(pymongo)在mongodb中编辑嵌入式文档

如何使用Spring Data MongoDB Repository以greatThan查询嵌入式文档?

如何使用Spring Data MongoDB MongoTemplate插入嵌入式文档

查询MongoDB中的嵌入式文档

在mongodb中展开嵌入式文档

在 MongoDB 中搜索嵌入式文档?

何时使用嵌入式文档MongoDB

如何使用Mongoose将值推入MongoDB中嵌入式文档中的数组?

如何在mongoDB中的多对多关系中使用嵌入式文档结构?

在文档中引用文档的嵌入式数组的嵌入式数组上查询Doctrine2和MongoDB

Spring Data MongoDB-嵌入式文档在其他文档中作为参考

mongodb是否会在嵌入式文档的_id字段上自动创建索引?

如何使用嵌入式Tomcat容器在Spring Boot中创建JNDI上下文

使用MongoDB和C#新驱动程序版本(2.0)更新集合中的嵌入式文档

MongoDB查询-聚合和嵌入式文档

回送和MongoDB嵌入式文档定义JSON模型

MongoDB对数组和嵌入式文档的条件验证

具有嵌入式文档的MongoDB findOne()和updateOne()

MongoDB嵌入式文档的区别和过滤器

使用C#获取和添加/更新多层嵌入式/嵌套MongoDB文档