2011-02-18 4 views
6

BufferedImage를 내 객체 파일에 저장할 수있는 객체가 있습니다. 동일한 객체에서 원시 데이터 배열에서 처음로드 된 후에 이미지를 캐시하는 데 사용하는 BufferedImage 변수가 있습니다. BufferedImage가 null이므로 객체를 만들고 파일에 저장할 때 모든 것이 잘 작동합니다. 로드 된 객체를 업데이트 할 때 문제가 발생하고 변수가 초기화되고 업데이트 된 객체를 저장하려고합니다.일부 데이터가 제외 된 파일에 직렬화 가능 객체 저장하기

일부 변수를 제외하고 직렬화 가능 객체를 파일에 저장할 가능성이 있습니까? 아니면 파일에 저장할 때 어떻게 든 BufferedImage 변수를 재설정 할 수 있습니까?

미리 감사드립니다. Serhiy.

답변

15

당신은 당신이 일시적으로 직렬화하지 않으려는 속성을 표시해야합니다 :

private transient BufferedImage image; 
4

변수는 transient으로 표시 할 수 있습니다. 변수가 일시적으로 표시되면 객체 직렬화시 직렬화되지 않습니다.

또한 저장된 상태에서 개체를 검색 할 때 transient 변수의 값이 null입니다. 따라서 사용하기 전에 일시 변수를 다시 초기화해야합니다.

관련 문제