최대 절전 모드 - 멤버 객체의 필드를 기반으로 객체를로드

StackOverflow https://stackoverflow.com/questions/150902

  •  02-07-2019
  •  | 
  •  

문제

멤버 객체의 필드 값을 기준으로 객체를 최대 절전 모드를 통해 어떻게로드 할 수 있습니까? 예를 들어, Bar와 Foo 사이의 일대일 관계가있는 다음 클래스가 존재한다고 가정합니다.

Foo {
    Long id;
}

Bar {
    Long id;
    Foo aMember;
}

FOO의 ID 만있는 경우 어떻게 최대 절전 모드 기준을 사용하여 막대를로드 할 수 있습니까?

내 머리에 뛰어 들어 첫 번째는 foo 객체를로드하고 막대 객체를로드하기위한 기준으로 설정했지만 낭비적인 것 같습니다. 기준으로이를 수행하는 효과적인 방법이 있습니까, 아니면 HQL이 처리 해야하는 방식입니까?

도움이 되었습니까?

해결책

이를 달성하기 위해 효율적인 방식으로 기준을 절대적으로 사용할 수 있습니다.

session.createCriteria(Bar.class).
        createAlias("aMember", "a").
        add(Restrictions.eq("a.id", fooId));

트릭을해야합니다.

다른 팁

기준 또는 HQL을 사용할 수 있습니다.

HQL 예 :

query query = session.createquery ( "bar bar.amember.id = : foloid");

query.setparameter ( "foonoid", foloid);

목록 결과 = query.list ();

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top