Java JPA按属性查找在VS按属性查找中的性能
我对Hibernate JPA比较陌生,所以我有一个快速的问题。我想知道,就性能而言,以下哪一种更好: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
attrList
vs
findByAttribute(Integer attr)
1000次,每次调用attr
的值不同
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
会更快,因为它只需要一次数据库往返。