Как хранить и извлекать объекты с помощью XML?

У меня есть класс Word с этими четырьмя атрибутами: text, caseSensitive, matchSimilar и relevance.

У меня есть 10 категорий для этих слов: (allowDetermining,allowHigh,...,denyDetermining,denyHigh и т. д.).

Я хочу иметь возможность хранить новые слова в каждой категории или извлекать все слова из какой-либо категории. Как я могу это сделать.

Я думаю, что структура XML должна быть такой, но я не знаю, прав ли я:

<allowDetermining>
    <word>
        <text>Renato</text>
        <caseSensitive>true</caseSensitive>
        <matchSimilar>false</matchSimilar>
        <relevance>0.75</relevance>
     </word>
</allowDetermining>
<allowHigh>
    ...
</allowHigh>
...

На данный момент я использую класс XMLConfiguration из Apache Commons Configuration. Любая идея о том, как это сделать с его помощью? А с другой библиотекой?


person Renato Dinhani    schedule 15.09.2011    source источник
comment
Рассматривали ли вы структуру JAXB? jaxb.java.net/tutorial   -  person andbi    schedule 15.09.2011


Ответы (1)


Является ли использование XML обязательным требованием или это только ваша первая идея? Для сохранения данных конфигурации или рабочих наборов JSON (данные) или YAML (конфигурация) могут иметь больше смысла и немного проще. XML работает лучше для своего исходного варианта использования (текстовая разметка), но для вещей, ориентированных на данные, он быстро теряет популярность, и на то есть веские причины.

person StaxMan    schedule 15.09.2011
comment
Нет, XML не является обязательным. Я только думаю, что это был правильный путь, но я посмотрю на JSON и YAML. - person Renato Dinhani; 15.09.2011
comment
быстро теряет популярность, и на то есть веские причины. очевидно, это больше мнение, чем факт. Просто потому, что лицо Джексона на 20-долларовой купюре... ;-) - person Ed Staub; 15.09.2011
comment
Спасибо, я использую JSON с библиотекой Gson от Google и работал. Легко использовать. - person Renato Dinhani; 15.09.2011
comment
Эд: да, никогда не заявлял, что это объективно, но просто проверьте количество вопросов JSON и XML здесь, в SO... XML умирает для передачи данных, даже если netcraft еще не объявил об этом. :-D - person StaxMan; 16.09.2011
comment
Ренато: поздравляю! У меня есть причины любить Джексона еще больше, но Гсон тоже солидный либ, рад, что все получилось. - person StaxMan; 16.09.2011