нет, вы не можете, потому что генератор jhipster yeoman «только» выравнивает объекты в соответствии с шаблонами + заданные параметры/варианты. На этом этапе он не запрашивает внешние источники, такие как базы данных.
Генератор создает все файлы для изменений jpa, угловых и линеазиса. Наконец, Liquibase создает таблицы с помощью списков изменений во время запуска, если они еще не существуют.
Итак, вы можете сказать, что jhipster использует «сущность сначала» вместо подхода «table first».
Хотя это была бы приятная функция, я не думаю, что она будет интегрирована в jhipster, потому что существующие базы данных настолько различны, что было бы слишком сложно обрабатывать каждую возможность. Существуют разные варианты первичных ключей, разных типов данных, различных реализаций отношений «много-ко-многим» или обобщений и т. Д. Или вы можете запросить новую функцию на Github и, возможно, он будет реализован ...
Но, чтобы дать несколько направлений: я была такая же ситуация, когда я попытался перенести существующую базу данных около 50 таблиц и с большим количеством данных в jhipster (это был ihipster 1.6 или около того), и я также подумал о «рефакторинге базы данных» [1]. Однако мое «решение» состояло в том, чтобы создать новую базу данных с помощью jhipster, а затем перенести данные из старой базы данных в новую с помощью некоторых SQL-операторов. Основные причины:
- У меня была другая модель базы данных, которая отличается от jhipster ожидается модели (например, я использовал другие первичные ключи и ссылки)
- Нет репозиториев, ни угловую материал (который был моей главной причиной для использования jhipster) генерируются
- Отсутствие изменений в линеазисах [2]
- Такой специальный рефакторинг вызывает много дополнительных изменений после того, как вы попытаетесь создать объект jhipster для существующей таблицы. Эти изменения могут быть более трудоемкими, чем создание новых объектов с помощью jhipster.
- Эти изменения могут также вызвать проблемы в обновлении художественных
и да, РОО имеет такую технику для реинжиниринга или рефакторинга базы данных (http://docs.spring.io/spring-roo/reference/html/base-dbre.html). AFAIK, он создает только объекты, совместимые с roo, которые основаны на JPA. Таким образом, он также отличается от данных Spring JPA, которые используются jhipster (такая же проблема, как и другие инструменты jpa-refectoring, такие как [1])
[1] Я использовал плагин Eclipse JPA, который может создавать классы объектов jpa из существующего базы данных в другом проекте на основе dropwizard. Но я не пробовал это в сочетании с Spring/Jhipster.
[2] Можно создать LiquiBase списков изменений из существующей базы данных: http://www.liquibase.org/documentation/generating_changelogs.html
См. Также http://docs.spring.io/spring-roo/reference/html/base-dbre.html –