Faster Java Serializations goal of the project is to enable faster serialization by generating bytecodes on the fly.
Version: 0.22Faster Java Serializations goal of the project is to enable faster serialization by generating bytecodes on the fly to serialize objects.
Operating System: Linux
When an object is serialized, its class is inspected and a class that implements the Serializer interface is generated. This class is tailor made to serialize the fields of the given object's class directly.
To serialize objects to a ByteBuffer, all you have to do is add jserial.jar to the classpath and use the SerializationContext class:
SerializationContext context = new SerializationContext();
ByteBuffer buffer = ByteBuffer.allocate(1024);
Serializes myObject. Note that, in order to be serialized, objects must implement java.io.Serializable
To reconstruct the object, all you have to do is use the DeserializationContext class:
DeserializationContext context = new DeserializationContext();
MyObject reconstructedObject = (MyObject)context.deserialize(buffer);
Reads the reconstructedObject. In the meantime, the data in the ByteBuffer can easily be written to a file or sent through a network using Java NIO.
This project uses a modified version of Javassist-3.3 to perform code-generation on-the-fly.
· Custom serialization through java.io.Externalizable
· Custom serialization through writeObject, readObject, writeReplace, readResolve or any other special serialization method.
· Inner/Local/Anonymous class serialization.
· Serialization of non-static final fields, though no error will arise when serializing objects that have such fields.