검색어 'Criteria'에 대한 1 개의 검색 결과

  1. 2010/03/10 [Hibernate] Criteria를 이용하여 Sorting하기 by Breeze

Hibernate의 Criteria를 이용하여 프로그래밍시에

Entity class가 다른 entity를 참조하고 있을 경우에 Sort Ordering을 하기 위하여서는 다음과 같이 해줘야 합니다.


예를 들어서 다음과 같은 코드가 있다고 한다면...

Class A  {
   String someProperty;
   Class B otherObject;
}

Class B {
   String name;
}


A Entity를 select하여 올때 B Class의 name으로 Sorting을 하고 싶다면...

다음과 같이 하면 될것 같으나 해보면 에러가 발생합니다.

Criteria fooCriteria = session.createCriteria(A.class);
fooCriteria.addOrder(Order.asc("otherObject.name"));


실제는 아래와 같이 해줘야 합니다.

Criteria fooCriteria = session.createCriteria(A.class);
fooCriteria.createAlias("otherObject", "otherObjectAlias");
fooCriteria.addOrder(Order.asc("otherObjectAlias.name"));

이런식으로 하는 이유는 inner Join을 발생시켜야 name에 대한 ordering이 가능해지기 때문입니다.
"ORM" 카테고리의 다른 글


Breeze의 서재
사랑하지 않으면 떠나라!
차드 파울러 저/송우일 역
소프트웨어 개발의 모든 것
김익환,전규현 공저
검색의 경제학
김원옥 역/빌 탠서 저
예스24 | 애드온2
Breeze 이 작성.

당신의 의견을 작성해 주세요.

[로그인][오픈아이디란?]