I need to serialise a javabean (with arbitrary nested beans) to plain text, and then later restore as an Object graph.
For the purposes of this question I am not interested in XML, JSON, etc. but rather name/value pairs.
The Spring DataBinder is great for turning a list of name/value pairs into a real Object. For example we can supply:
values.addPropertyValue("id", "6789"); values.addPropertyValue("nestedBean.systemId", "FOO"); values.addPropertyValue("nestedBean.systemId", "BAR");
And use the DataBinder to produce a top level bean (with property
id) containing a
List of two nested beans.
My question is, how can I easily serialise a bean into the format that DataBinder expects?
I would expect something of the form:
Map<String,String> reduceBeanToNameValuePairs(Object bean)
but have had no luck finding anything of the sort.
What is Spring's Minimum Dependencies for Dependency Injection?
when using @transactional do i need to use jpatemplate/hibernatetemplate?
How to detect unused properties in Spring
Its BeanMap class provides an entrySet method for accessing the wrapped bean's properties as entries of a map..
Integrating grails into an existing spring application?
This functionality is already sufficient for "flat" beans and would probably provide a good starting point for adding the necessary recursion for nested bean graphs..
Can you use Future/Futuretask objects with Spring TaskExecutors?
Ouput XML with Freemarker