java - 使用 hibernate 以两个列表作为参数从数据库获取对象

标签 java sql performance hibernate

我正在尝试从数据库迭代两个集合中获取结果,如下所示

for (SomeType element1 in List1) {
    for (SomeType2 element2 in List2) {
        Query query = session.createQuery("from Table where column1 =: element1 and column2 =: element2");
        //Operations on list of results
    }
}

我怎样才能以最佳性能做这样的事情?在我的应用程序中,list1 有 200 个元素,list2 大约有 30 个元素,这需要太多时间。

最佳答案

您可以尝试:

Query query = session.createQuery("from Table where column1 IN (:List1) and column2 IN (:List2)");

关于java - 使用 hibernate 以两个列表作为参数从数据库获取对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35626610/

相关文章:

java - DatagramChannel 数据包监听器占用高 CPU 资源

批量插入命令中的MySQL错误,

performance - 序言程序: clp(fd) too slow无输出

php - 在数据库服务器上存储大量表

C# 遍历 3D 数组的最快维度

java - 用于从路径 WEB-INF\ftl\访问 Freemarker 文件的 Freemarker 模板

java - 无法让观察者模式正常工作

mysql - SQL 语法错误和事件无法启动

php - 如何防止 PHP 中的 SQL 注入(inject)?

java - Xor 如何交换值?