Java 객체를 바이트 배열로 직렬화 및 역직렬화
네트워크를 통한 데이터 전송과 관련된 일반적인 시나리오에서는 객체를 변환해야 하는 경우가 많습니다. 효율적인 전송을 위해 바이트 배열로 변환됩니다. Java 객체를 직렬화 및 역직렬화하는 방법을 이해하면 개발자는 이 데이터 교환을 효과적으로 관리하여 전송된 객체의 무결성과 기능을 보장할 수 있습니다.
직렬화
객체를 직렬화하려면, 시도되고 테스트되었습니다 메서드:
static byte[] serialize(final Object obj) { ByteArrayOutputStream bos = new ByteArrayOutputStream(); try (ObjectOutputStream out = new ObjectOutputStream(bos)) { out.writeObject(obj); out.flush(); return bos.toByteArray(); } catch (Exception ex) { throw new RuntimeException(ex); } }
역직렬화
객체가 직렬화되어 전송되면 수신 측에서는 다음 접근 방식을 사용하여 객체를 재구성할 수 있습니다.
static Object deserialize(byte[] bytes) { ByteArrayInputStream bis = new ByteArrayInputStream(bytes); try (ObjectInput in = new ObjectInputStream(bis)) { return in.readObject(); } catch (Exception ex) { throw new RuntimeException(ex); } }
이러한 메소드를 구현함으로써 개발자는 Java 객체를 바이트 배열로 원활하게 변환하고 네트워크를 통해 전송한 다음 수신 측에서 역직렬화하여 객체의 상태를 보존하고 추가 처리를 가능하게 합니다.
위 내용은 Java 개체를 바이트 배열로 직렬화 및 역직렬화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!