У меня есть база данных Sql Server (версия 2008 работает с базами данных в режиме 2000), и я хочу сгенерировать некоторые XML-файлы, используя данные из этой базы данных. У меня есть XML-схема для этого XML.
У меня есть 3 способа сделать это.
Выбор SQL Server FOR EXPLICIT
Запрос был бы немного запутанным, но я знаком с написанием SQL-операторов. Проблема в том, что сгенерированный XML потребует дополнительных операций, таких как замена некоторых перечислимых строк на строки. Так будет выглядеть:
Sql Server- (XML) -> Java-приложение
Создание xml -> Постобработка -> Проверка схемы -> xml файл
Зависимости хранятся в SQL-запросах в форме, такой как Cases! Case! Title! Title! Name (довольно грязно) и в дополнительных операциях в java.
JAXB-сгенерированные классы и пользовательские SQL-запросы
XML, созданный в Java в логике приложения. Я бы вручную писал запросы для извлечения данных и помещал их в правильный тег / атрибут.
Зависимости хранятся в коде Java:
- в запросах на выбор (выберите число, ... из ...)
case.setNumber(rs.getInt("number"));
JAXB генерирует классы с меньшим количеством запросов
Итак, я заметил, что в случае 2 у меня одинаковая информация в 2 местах, поэтому я хочу сохранить это поле привязок = столбец. Затем я могу генерировать запросы выбора и копировать циклы, используя отражение.
Способ хранения:
hashmap<String,String> field,column
-аннотации к полям, сгенерированным из XML-схемы с использованием плагина Annotate, затем я получаю аннотации для каждого поля в классе и генерирую запрос.
Может быть, есть еще один способ, который я еще не рассмотрел.
Я хочу сделать это, скажем так, профессионально, чтобы практиковать что-то новое во время довольно простой задачи.