처음에는 몇 가지 의사 코드로 예제를 제공 한 다음 문제가 무엇인지 설명하겠습니다. User와 Phonenumber의 두 엔티티가 있다고 가정 해 보겠습니다. 그들의 관계는 일대 다입니다. 내가 좋아하는 뭔가가 있다면 내 응용 프로그램에서교리 가져 오기 연결
class UserRepository
{
public function getUser($id, $type)
{
$users = $this->createQuery("SELECT u, p FROM User u JOIN u.phonenumbers p
WHERE u.id = :id AND p.type = :type")
->setParameters(array(
'id' => $id,
'type' => $type,
))
->getResult();
return $users[0];
}
}
: 그래서
$user = $userRepo->getUser(1, 'home');
var_dump($user->getPhonenumbers()); // here phonenumbers collection is ok
$user = $userRepo->getUser(1, 'work');
var_dump($user->getPhonenumbers()); // Here phonenumbers collection is wrong.
// It's exactly the same as the previous one.
을 내 질문은 : 내 UserRepository에서 나는 그런 일이있을 수는 (다른 기준)에 가입 가져 오기 사용 가능 매번 적절한 컬렉션을 얻으려면?
필자는 Query :: HINT_REFRESH를 사용하여 최종적으로 성능에 영향을 미칠 것으로 생각되지만, 분명히 솔루션을 점검 할 것입니다. 시간 내 줘서 고마워. – ventsislaf