Java JPA按属性查找在VS按属性查找中的性能

Java JPA按属性查找在VS按属性查找中的性能,java,spring-boot,hibernate,jpa,Java,Spring Boot,Hibernate,Jpa,我对Hibernate JPA比较陌生,所以我有一个快速的问题。我想知道,就性能而言,以下哪一种更好: 在attrListvs 调用findByAttribute(Integer attr)1000次,每次调用attr的值不同 假设这些方法位于JPA存储库中,如下所示: public interface MyRepository extends JpaRepository<MyEntity, Integer>{ List<MyEntity> myEntit

我对Hibernate JPA比较陌生,所以我有一个快速的问题。我想知道,就性能而言,以下哪一种更好:

  • attrList
    vs

  • 调用
    findByAttribute(Integer attr)
    1000次,每次调用
    attr
    的值不同

  • 假设这些方法位于JPA存储库中,如下所示:

    
    public interface MyRepository extends JpaRepository<MyEntity, Integer>{
      
      List<MyEntity> myEntityList findByAttributeIn(List<Integer> attrList);
      Optional<MyEntity> entity findByAttribute(Integer attr);
     
    }
    
    
    
    
    公共接口MyRepository扩展了JpaRepository{
    列表myEntityList findByAttributeIn(列表属性列表);
    可选实体findByAttribute(整数属性);
    }
    

    我最初的假设是,中的
    findByAttributeIn(List attrList
    )会执行得更快,因为它是对DB的单个连接调用,但您再次调用它需要1000项。我的问题是,它与后者之间是否会有显著差异(
    FindByatAttribute(Integer attr)
    )当谈到速度时?

    大概是“在”只需要一次往返。@chrylis谨慎的光学-是的,这也是我的假设,我只是想知道两者在处理速度方面是否有显著差异。通常,
    findByAttributeIn
    会更快,因为它只需要一次数据库往返。