런타임 예외를 잡는 것이 매우 나쁜 디자인의 99 %에 있다는 것을 알고 있습니다.XML로 NullPointerException을 제어하십시오.
하지만 Java로 매핑 된 XML이 있고 마지막 노드가 존재하는지 테스트합니다. 예 :
XML : <A> <B> <C> <D>someValue</D> </C> </B> </A>
if(myObject.getA() != null && myObject.getA().getB() != null &&
myObject.myObject.getA().getB().getC() &&
myObject.myObject.getA().getB().getC().getD() != null){
doSomeAction(myObject.myObject.getA().getB().getC().getD());
}
그것은 우리가 20 개 노드가 있다면 상상 ... 단지 유효한 null 가능한 많은 라인을 ...
는 XML 게터는 간단한 (매우 가벼운 것을 감안할 때 값이 반환) 그래서 우리가 대신 할 수없는 성능 이유로 정말, null이 될 수있는 민간 대표가 없습니다 : 당신의 의견은 무엇
try{
doSomeAction(myObject.myObject.getA().getB().getC().getD());
}
catch(NullPointerException e){
throw new NullPointerException("D node doesn't exist , please check your XML", e);
}
s?