POxOSerializer
POxOSerializer is a fast and efficient cross-language serializer for POJO and POCO classes. The goal is to allow communication between software written in java and c#. Using this serializer you can serialize/deserialize any class that is composed by primitive types, strings, lists and maps. You can write your classes in java and use the java2csharp maven plugin (https://github.com/codejuicer/java2csharp) to generate c# equivalent classes. List (IList) and Map (IDictionary) are implemented respectively with ArrayList (List) and HashMap (Dictionary) in Java (C#). The POxOSerializer has an easy to use API with only serialize and deserialize methods.
It is not thread safe and it improve his performance along the time.
About the binary encoder/decoder algorithms we reuse Kryo code by Nathan Sweet (https://github.com/EsotericSoftware/kryo).
Types supported
Java | C# |
byte | SByte |
Byte | SByte |
char | Char |
Character | Char |
short | Int16 |
Short | Int16 |
int | Int32 |
Integer | Int32 |
long | Int64 |
Long | Int64 |
double | Double |
Double | Double |
float | Single(float) |
Float | Single(float) |
boolean | Boolean |
Boolean | Boolean |
String | String |
Date | DateTime |
LocalDate | None |
LocalTime | None |
LocalDateTime | None |
ZonedDateTime | None |
enum | enum |
List | IList |
Map | IDictionary |
Java Installation
POxOSerializer bundle is available on the releases page and at [Maven Central] (http://search.maven.org/#browse%7C2107995541).
Java Integration with Maven
To use the official release of POxOSerializer, please use the following snippet in your pom.xml
<dependency>
<groupId>org.codejuicer</groupId>
<artifactId>poxo-serializer</artifactId>
<version>1.0.4</version>
</dependency>
C# Installation
POxOSerializer library for c# is available on the releases page