매우 일반적인 대상 도달 불가능 예외와 관련하여 2 가지 질문이 있습니다. 국가에는시, 도시에는 거리가 있습니다. - 국가의 생성자 new City()에 City의 생성자 new Street() 을 넣으십시오. (따라서 사용자는 아무렇지도 않게 중앙에 배치 할 수 있지만 항상 필요하지 않은 객체를 만듭니다) 또는 객체를 초기화합니다. 코드의 여러 위치에서 필요로하는 곳에서? (코드 전체에 퍼짐) - 사용자가 거리에 대해 아무 말도하지 않는다면 DB에 빈 행을 삽입하지 못하도록 거리를 null로 되돌립니다. 다시 null로 되돌릴 수있는 가장 좋은 곳은 어디입니까? 왜 JSF 그냥 무엇을 필요로하는지 인스턴스화되지 않으며,이 엔티티를 지속하지 최대 절전 모드 : 는우아한 방법으로 도달 할 수없는 대상을 처리하는 방법
PS는 (그렇지 않으면 당신은 당신이 비어 알고 있다면 그냥 저장하지 거라고, 당신이 Cascade.ALL 또는 확장 컨텍스트가 있다고 가정) 모든 영구 필드가 비어 있습니까? 성능 또는 그 이유는 무엇입니까? 다시 한번 PK와 FK를 사용하여 DB에서 빈 행을 만드는 것이 좋지 않습니까?
게으른 게터가 생성자보다 더 나은 것처럼 보일 수 있지만 성능상의 문제가 거의 발생하지 않는 경우 "그렇지 않은 것입니까? jsf 게터에서 그것을 알고있는 것은 많이 불린다. 코드에서 여러 곳에서 인스턴스화하는 방법에 대해 어떻게 생각합니까? 필요할 때가 있다는 것을 알았습니까? (나를 위해 그것을 추적하고 오류가 발생하기 어려운 것) –
컴파일 된 Java 응용 프로그램에서 평가되는 속도는 실제로 측정 가능한 성능 차이를 만들지는 않지만 귀하의 질문에 나는 또한 아무런 문제도 볼 수 없습니다. 앱에서 필요한 곳에서 객체를 인스턴스화합니다. –