2014-10-31 5 views
0

나는 최대 절전 모드 @OneToOne 매핑

  1. 내가이 과도에게 그것의 항상 가져 오는 널 (null)을 만들 때 @OneToOne(fetch=FetchType.LAZY) @JoinColumns({@javax.persistence.JoinColumn(name="inst_id", referencedColumnName="inst_id", insertable=false, updatable=false), @javax.persistence.JoinColumn(name="staff_id", referencedColumnName="staff_id", insertable=false, updatable=false)}) private StaffTbl staffTbl;

  2. 을 (staffTbl이 느리게 가져 오지 못하고있다)하지만 잘 작동 .. 코드의 조각을 다음 있습니다 : @OneToOne(fetch=FetchType.LAZY) @JoinColumns({@javax.persistence.JoinColumn(name="inst_id", referencedColumnName="inst_id", insertable=false, updatable=false), @javax.persistence.JoinColumn(name="staff_id", referencedColumnName="staff_id", insertable=false, updatable=false)}) private transient StaffTbl staffTbl;

어떤 실수가 있습니까?

(나는 보스 6.1, 최대 절전 모드 3 사용하고 있습니다)

+0

과도기를 핵심 단어로 보는 것은 처음이지만 그럼에도 불구하고 - 예상했던 것과 다른가요? Transient는 필드가 데이터베이스에 연결되어 있지 않아야 함을 의미합니다. 해결하려는 문제는 무엇입니까? – Deltharis

답변

0

어떤 실수가 있습니까?

필드가 일시적으로 표시되면 해당 항목이 엔티티의 영구 상태의 일부가 아니라는 것을 의미합니다.

솔루션 :

변화 :

private StaffTbl staffTbl; 
+0

봄에 많은 어려운 질문에 답하는 것을 보았습니다. 제 대답을주세요. http://stackoverflow.com/questions/28577325/how-to-run-2-tasks-separately –

0

transient 자바 키워드로는 객체 직렬화 때 아마이 효과를보고있다, 그래서이 필드가 무시되어야한다는 것을 의미한다. 질문은 무엇을 성취하려고 하는가? 당신은 최대 절전 모드의 맥락에서 일시적으로 staffTbl을 표시하는 의미 경우

, 당신은 @Transient 함께 주석을 추가 할 뻔했지만 당신은 데이터베이스에서 오지 않을 것이기 때문에, 그 값을 설정해야합니다 그리고 당신은 더 많은 것을 기대할 수 있습니다 nulls.