当前位置: 首页 > 知识库问答 >
问题:

java mongo创建日期

梁俊友
2023-03-14

我有一个java代码,它将一个对象插入到Mongo DB的一个集合中。当我插入这个新对象时(下面给出了该对象的详细信息),我还需要插入一个创建日期。处理这件事的最好方法是什么?由于我们有不同的时区,我想确保我遵循了正确的方法来保存和读取日期字段。

文档结构:我需要让我的java代码创建一个系统日期,以正确的格式将创建日期插入Mongo DB。

{“_id”:对象id(“568ac782e4b0fbb00e4f1e45”),“cat”:“Abc”,“名称”:“testName”}

请指教。

共有1个答案

柯振濂
2023-03-14

另一种方法是使用标准的Spring数据MongoDB审计功能(假设您的项目是基于Spring的)。

  1. 添加Spring数据对 mongodb 的依赖关系
  2. 使用@EnableMongoAuditing注释主类
  3. 向 mongoDb 实体类中添加一个字段 本地日期 已创建日期
  4. 使用@CreatedDate注释此新字段
  5. 利润。每个新保存的实体将自动将当前日期注入到此新字段中。

因此,您的主要类将如下所示:

@SpringBootApplication
@EnableMongoAuditing
public class SpringDataMongodbAuditingApplication {    
    public static void main(String[] args) {
        SpringApplication.run(SpringDataMongodbAuditingApplication.class, args);
    }
}

您的实体类将如下所示:

@Document    
public class Client {

        @Id
        private ObjectId id;

        private String name;

        @CreatedDate
        private LocalDate createdDate;

        // constructor, getters, setters and other methods here ...
    }

您的存储库界面没有什么特别之处:

@Repository
public interface ClientRepository extends MongoRepository<Client, ObjectId> {

}
 类似资料:
  • 问题内容: models.py 我想在一定条件下将默认数据插入数据库中,这应该在通过注释创建超级用户时发生。 我不知道使用django是可行的,但这是必要条件。我尝试了上面的代码。创建超级用户时收到错误“ AttributeError:’User’对象没有属性’location’”。 我需要的样品如下 问题答案: 尝试将此功能用作信号处理程序: 向模型字段添加选择: Django CharFiel

  • 问题内容: Oracle是否具有内置功能来根据其各个组成部分(年,月和日)创建仅对缺失数据返回null的日期? 我知道,但是我需要首先编写一个字符串,并且运算符和函数都无法轻松处理丢失的数据: 只要是我们最终和: 问题答案: 例如,您可以使用: 不幸的是,Oracle没有一种方法(如果可能)进行转换,否则将返回NULL。SQL Server最近为此目的而引入。 一种选择是为失败的转换编写带有异常处

  • 问题内容: 输出为: 1988年 1月25 日星期三00:00:08 IST 1989 我过去了,但我得到了。为什么? 问题答案: 日历中的月份从零开始。因此,将12解释为12月+ 1个月。用

  • 输出为: 1988 1989年1月25 00:00:08日星期三 我通过了1988年12月25日的考试,但我得到了1989年1月25日的考试。为什么?

  • 问题内容: 我正在尝试根据创建记录的日期为每个记录创建唯一的ID。例如,如果今天创建记录,我希望键为20101130XX,其中XX是数字的顺序列表,例如01、02、03等…以防今天有多个人创建记录。 如果昨天有3个人创建了记录,则其唯一ID为 2011032700 2011032701 2011032702 然后午夜到了,有人创建了一个新记录 2011032800 这样做的目的是给每个记录一个唯一

  • 本文向大家介绍Python创建日历实例,包括了Python创建日历实例的使用技巧和注意事项,需要的朋友参考一下 本文讲述了Python创建日历的方法,与以往不同的是,本文实例不使用Python提供的calendar实现,相信对大家的Python程序设计有一定的借鉴价值。 此程序在windows下测试通过,由于python字符编码直接输出给操作系统,so win下以gbk ansi为准,linux下