IT Share you

자바 : 객체를 byte []로, byte []를 객체로 변환기 (도쿄 내각 용)

shareyou 2020. 12. 2. 22:14
반응형

자바 : 객체를 byte []로, byte []를 객체로 변환기 (도쿄 내각 용)


객체를 byte []로 변환하여 Tokyo Cabinet 키-값 저장소에 저장해야합니다. 또한 키-값 저장소에서 읽을 때 byte []를 Object에 언 바이트해야합니다.

이 작업에 도움이 될 패키지가 있습니까? 아니면 직접 구현하는 가장 좋은 솔루션이 될까요?


public static byte[] serialize(Object obj) throws IOException {
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    ObjectOutputStream os = new ObjectOutputStream(out);
    os.writeObject(obj);
    return out.toByteArray();
}
public static Object deserialize(byte[] data) throws IOException, ClassNotFoundException {
    ByteArrayInputStream in = new ByteArrayInputStream(data);
    ObjectInputStream is = new ObjectInputStream(in);
    return is.readObject();
}

클래스가 확장되면를 Serializable통해 객체를 쓰고 읽을 수 있습니다 ByteArrayOutputStream. 이것이 제가 일반적으로하는 일입니다.


commons-lang 에서 사용 serializedeserialize방법 .SerializationUtils


Hector가 Cassandra를 위해이 작업을 수행하는 방법을 볼 수 있습니다. 여기서 목표는 동일 byte[]합니다. NoSQL 데이터베이스에서 저장 / 검색하기 위해 모든 것을 변환하고 검색 합니다 . 여기를 참조하십시오 . 기본 유형 (+ String)의 경우 특수 Serializer가 있고, 그렇지 않으면 제네릭 ObjectSerializer(예상 Serializable및 사용 ObjectOutputStream)이 있습니다. 물론 모든 것에 대해서만 사용할 수 있지만 직렬화 된 형태의 중복 메타 데이터가있을 수 있습니다.

전체 패키지를 복사하여 사용할 수 있다고 생각합니다.

참고 URL : https://stackoverflow.com/questions/3736058/java-object-to-byte-and-byte-to-object-converter-for-tokyo-cabinet

반응형