En java, pour sérialiser des objets en XML, nous pouvons utiliser la librairie Castor. En .NET, nous pouvons utiliser System.Xml.Serialization. Dans les deux cas, un fichier est Xml est lu ou écrit et les balises XML correspondent à des objets ou à des attributs de ces objets. En Castor, les correspondances peuvent se faire par un fichier de configuration lui-même en XML. En .NET, les correspondances peuvent se faire en utilisation des annotations (attributs).
J'ai utilisé (très très peu faut l'admettre) les deux, et pour l'instant je trouve la façon .NET de faire plus simple.