технология Java для обновления нескольких структур базы данных

#java #database #design-patterns #jdbc #orm

#java #База данных #шаблоны проектирования #jdbc #orm

Вопрос:

мне нужно написать компонент для чтения XML-файлов и обновления уже созданной таблицы базы данных. проблема заключается в изменении xml для получения новых данных, а затем изменяется соответствующая структура таблицы базы данных.

но мне нужно общее решение и один компонент, выполняющий его, и я не хочу кодировать для конкретного изменения структуры xml и базы данных

я не нахожу никаких ORM, JDBC технологий / шаблонов проектирования для достижения этой цели. есть предложения?

Спасибо,

Комментарии:

1. Существуют библиотеки для работы с XML и реляционными базами данных, но ни один компонент не подходит для всех компонентов, которые вы себе представляете. Реальный ответ — это инструмент ETL. Вы говорите так, как будто хотите, чтобы все волшебным образом работало. Этого никогда не происходит.

2. Может быть, вам стоит взглянуть на Hibernate и эффект его настройки hbm2dll= auto.

3. спасибо, инструменты etl снова необходимо закодировать для конкретной структуры базы данных.. но желание чего-то волшебного — источник настоящих изобретений: P

4. похоже, что hbm2dll автоматически создает таблицы, но в моем случае мне нужно уже создавать структуры базы данных, поскольку это требует некоторого тщательного моделирования

Ответ №1:

Использование гибернации… Это возможно (попробуйте)

В режиме гибернации при выполнении кода сначала выполняется поиск файла hibernate.properties (помните, что hibernate.properties должен быть помещен в папку src ).

Если он находит файл ‘hibernate.properties’, он считывает содержимое этого файла first.So , теперь вы пишете класс драйвера, URL, имя пользователя и пароль для подключения к одной базе данных (скажем, MySQL), а затем с помощью метода saveOrUpdate(); или с помощью других методов обновите базу данных

Для второй базы данных используйте файл конфигурации, укажите информацию DriverClass, URL, имя пользователя и пароль внутри hibernate.cfg.xml (или ваше собственное имя для файла конфигурации) и используйте cfg.configure(); метод для чтения файла конфигурации.

Дайте мне знать, если у вас возникнут какие-либо проблемы