Почему hibernate выполняет два запроса для активной загрузки двунаправленной ассоциации @OneToOne?

у меня есть сущность A, которая имеет сущность B, а B имеет сущность A с двунаправленной ассоциацией @OneToOne.

Теперь, когда я нахожу все записи A, hibernate выполняет два запроса с левым внешним соединением на B, что-то вроде этого:

select a.id, a.id_b, a.field1, b.id, b.field1 from A as a, B as b left outer join b ON b.id=a.id_b;
select a.id, a.id_b, a.field1, b.id, b.field1 from A as a, B as b left outer join b ON b.id=a.id_b WHERE b.id=?

Первый запрос загружает поля A и B, и это нормально, но зачем выполнять второй запрос для перезагрузки A? Я думаю, что этот запрос загружает содержимое A в B, но этот A, очевидно, является A, который содержит B ... так что он уже загружен первым запросом, не правда ли?

-- РЕДАКТИРОВАТЬ --

Сущность A:

@Entity
public class A implements Serializable{
    // id and other ecc ecc
    @OneToOne
    @JoinColumn(name="id_b")
    B b;
}

Сущность B:

@Entity
public class B implements Serializable{
    // id and other ecc ecc
    @OneToOne(mappedBy="b")
    A a;
}

Это ситуация, и для findAll на A нужны два запроса ... зачем?

Ответы на вопрос(1)

Ваш ответ на вопрос