Java 使用Spring框架验证访问Neo4j数据库的junit测试用例

Java 使用Spring框架验证访问Neo4j数据库的junit测试用例,java,junit,spring-boot,Java,Junit,Spring Boot,我正在开发一个spring引导应用程序,它可以访问Neo4j数据库中的数据。有junit测试用例来验证某些功能 我面临着一个奇怪的情况 我有一个Person类,其对象使用扩展GraphRespository的PersonRepository类存储在数据库中 在junit测试用例中,我调用@Service类的一个方法,该方法执行以下操作 public void getAndUpdatePerson(String username){ Person p1 = personReposito

我正在开发一个spring引导应用程序,它可以访问Neo4j数据库中的数据。有junit测试用例来验证某些功能

我面临着一个奇怪的情况

我有一个Person类,其对象使用扩展GraphRespository的PersonRepository类存储在数据库中

在junit测试用例中,我调用@Service类的一个方法,该方法执行以下操作

 public void getAndUpdatePerson(String username){

    Person p1 = personRepository.findOneByUuid(username);
    Person p2 = personRepository.findOneByUuid(username);

    System.out.println("-------------");
    System.out.println(p1==p2); // true
    p1.setFullName("ASDF");
    System.out.println(p2.getFullName()); //ASDF
    p1.setFullName("QWER");
    System.out.println(p2.getFullName()); //QWER
    System.out.println("-------------");

 }
println的输出与语句一起提供。 从输出来看,似乎p1和p2都引用了相同的对象,尽管它们是分别从数据库中检索的。无论对象p1中有什么变化,变化也会反映在对象p2中

这种行为行吗?如果是,为什么