有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Springdatajpa什么时候开始。save()是否返回相同的实体?

在这段代码中,我保存了主对象和该对象的外键。 我打印出“实体”和“事物”,它们应该是完全相同的对象。但他们不是。为什么

thingList.forEach(entity -> {
            System.out.println(entity);

            // Save if the foreign key exists and isn't already saved in the database
            if(entity.ForeignKey() != null && ForeignKeyRepository.findOne(entity.ForeignKey().getId()) == null)
            {
                ForeignKeyRepository.save(entity.getForeignKey());
            }
            Thing thing = thingRepository.save(entity);
            System.out.println(thing);
        });

共 (1) 个答案

  1. # 1 楼答案

    这就是他们在save方法的文档中提到的例外情况

    S save(S entity) : Saves a given entity. Use the returned instance for further operations as the save operation might have changed the entity instance completely.