如何在子窗格中使用hibernate中的批量提取?

时间:2016-08-23 12:59:47

标签: hibernate

我有一个表用户,有100条记录。

我有一个子表,称为用户角色,有200条记录。(每个用户2个)。

如果我获得所有用户,则运行100个查询。

我使用List userList = session.createCriteria(User.class).list();

有没有办法优化它。

1 个答案:

答案 0 :(得分:0)

您描述的问题称为n + 1选择问题。

Hiberante提供了几种不同的方法来处理它。对他们来说,就是为关系设置获取模式为EAGER,这会导致问题。 假设表User和表UserRoles之间的一对多映射被称为" userRoles":

$( "body" ).click(function() {

        var audio = document.getElementById('audio1');
        if (audio.paused) {
            audio.play();
        }else{
            audio.currentTime = 0
    }
    });