Маршалиране на XML файл като Spring bean

Може ли някой да ми даде намек как мога да маршалирам bean от статичен XML файл (main/resources/config.xml) през пролетта? Бих искал да накарам Spring да свърши цялата работа вместо мен, надявам се с малко магия във файла spring applicationContext.xml.

Например имам следното:

@XmlRootElement(name="config")
public class MyConfig
{
  private List<FooBar> foobars;

  //constructor, getter + setter
}

@XmlType(name="fooBar")
public class FooBar
{
  private String name;
  private Foo foo;
  private Bar bar;

  //constructor, getters + setters
}

@XmlType(name="foo")
public class Foo
{
  private String name;

  //constructor, getters + setters
}

@XmlType(name="bar")
public class Bar
{
  private String name;

  //constructor, getters + setters
}

И аз искам bean зареждане с този XML;

<config>
  <fooBar>
    <name>foobar1</name>
    <foo>
      <name>foo1</name>
    </foo>
    <bar>
      <name>bar1</name>
    </bar>
  </fooBar>
  <fooBar>
    <name>foobar2</name>
    <foo>
      <name>foo2</name>
    </foo>
    <bar>
      <name>bar2</name>
    </bar>
  </fooBar>
</config>

Бих могъл просто да напиша конструктор и да предам XML файла като ресурс, но имам чувството, че Spring вече е решил проблема за мен, просто не мога да разбера как.


person Qwerky    schedule 18.01.2011    source източник


Отговори (1)


Вярвам, че Spring не включва обработка на xml, свързана с не-spring конфигурация. Това обаче може да е решението, което искате: castor. Това не е единственият подобен инструмент. То е; обаче единственият, за който се сещам atm.

person DwB    schedule 18.01.2011
comment
Ако не се нуждаете от предлаганото колело за свързване на Java към SQL, XStream (xstream.codehaus.org ) осигурява функционалност за Java‹-›XML - person salexander; 18.01.2011