ObjectInputValidation — 역직렬화 후 객체 검증 콜백
ObjectInputValidation — 역직렬화 후 객체 검증 콜백
ObjectInputValidation은 객체 그래프 내 객체의 검증을 허용하는 콜백 인터페이스예요. 객체 그래프가 완전히 역직렬화되었을 때 객체가 호출될 수 있게 해 줍니다.
본문
이 인터페이스는 ObjectInputStream과 함께 사용해요. ObjectInputStream.registerValidation(ObjectInputValidation, int)로 검증 콜백을 등록하면, 그래프 전체가 역직렬화된 후 지정한 우선순위에 따라 validateObject()가 호출돼요. 여러 객체의 불변 조건이 함께 만족되는지 최종 검증할 때 유용해요.
메서드
void validateObject() throws InvalidObjectException— 객체를 검증해요. 검증 실패 시InvalidObjectException을 던져요.
ObjectInputValidation은 순환 참조가 있는 객체 그래프에서 모든 객체가 복원된 뒤에 상호 불변 조건을 확인하고자 할 때 사용해요.