나는 레거시 데이터베이스로 작업하고 있으며 최대 절전 모드로 전환하려고합니다. (A)의 목록 (읽기 전용) 내가 편지를 위해 개체를 수정 만 할 수있어,이 객체에서 내가 얻을 수 있기를 원하는속성을 기반으로 최대 절전 모드 모음 매핑
Table results:
id (number pk)
info_id (varchar)
result (varchar)
Table info
id (number pk)
info_id (varchar)
Table registration
id (number pk)
Table letter
id (number pk)
registration_id
:
내가 좋아하는 뭔가를 보이는 3 개 테이블이
public class Registration {
private Long id;
private Info info;
}
내가 노력 해요 :
public class Letter {
private Long id;
private Registration registration;
private List<Result> results;
}
등록 개체가 이미 존재하고 다음과 같습니다 결과 g는 결과가 문자 객체에 객체를 매핑하고, 나는이 같은 시도했습니다 :
<list name="results" table="result" cascade="none" inverse="false">
<key property-ref="registration.info.info_id"/>
<index column="info_id " />
<one-to-many class="Result" />
</list>
나는 기본적으로 개체의 체인을 통해 가입 할 최대 절전 모드 싶은, 그리고 결국처럼 보이는 SQL 얻을 :
를SELECT * FROM result,letter,info WHERE letter.info_id=info.info_id AND info.info_id=result.info_id
AND letter.id=?;
최대 절전 모드에서 실행 가능합니까?
편집 : 테이블 정보와 등록 정보는 동일합니다. 따라서 info.id=registration.id
. 필요한 경우 Letter 객체에 Info를 추가 할 수 있습니다.
info에는 registration_id가 없습니다. – Zeus
나는 쿼리를 수정했다. 위의 내 의견을 참조하십시오. 정보와 등록에는 동일한 PK가 있습니다. –