Как сохранить сложный обьект в джаве?
Любой сериализатор справится с этой задачей, если объекты сериализуемые.
сериализация. 
только должны быть соблюдены следующие условия.

Данные должны быть самодостаточны, 
какие то ресурсы должны восстанавливаться при десириализации. (например коннект к базе)