Модельный код базы данных JPA с визуальными диаграммами

Я ищу инструмент для разработки и внедрения баз данных и объектов для проекта Java. Возможно, мы используем JPA или Direct Hibernate. Я ищу следующие функции:

  • База данных проектирования с визуальным модулем
  • Создание объектов из визуальной модели
  • Обновление сущности для визуальной модели
  • Импортировать существующую схему базы данных как классы визуальной модели/сущности

Итак, идея состоит в том, чтобы изначально создать модель базы данных с визуальным инструментом, затем автоматически создать для нее сущности, а затем изменить код и ожидать, что визуальная диаграмма отражает изменения (поэтому она работает для целей документации). Я хочу полное представление схемы таблицы, а не только диаграмму ER.

Были и другие вопросы (конечно), но они, похоже, не настолько специфичны для Java/JPA и не имеют строгих требований. Они также часто создают схему из схемы или схемы базы данных - они не требуют двунаправленной поддержки (если это правильный термин).

Продукты, которые я нашел до сих пор:

  • NetBeans (6.7.1): поддерживает создание классов Java из UML, JPA нуждается в определенных шаблонах (звуки слишком сложны). Не идентифицирует новые элементы из классов.
  • DbSchema: Кажется, предлагать некоторую визуализацию схем, не удалось запустить, так что не могу сказать много. Коммерческая, но она также имеет бесплатную версию.
  • Omondo EclipseUML: похоже, какая-то поддержка, но стоит как ад.
  • SchemaSpy: поддерживает только создание документации из существующей схемы базы данных. Также не удалось найти исчерпывающий график.
  • Comad Data Modeller: Немного грязная домашняя страница, однако, похоже, поддерживает создание диаграмм из существующей БД, а также создание схемы БД из диаграммы. Не имеет средств генерации кода.
  • Eclipse WTP Dali JPA Tools: Нет поддержки для визуальная презентация, однако направленная на оказание помощи в развитии JPA.

Как вывод, Дали представляется наиболее интересным, поскольку он нацелен на развитие JPA. Однако, похоже, у него нет какой-либо визуальной диаграммы (просто очертания и прочее).

Любые предложения?

Ответ 1

Посмотрите на Редактор диаграмм JPA для Eclipse, первый Milestone был выпущен недавно. Из объявление:

Я рад сообщить, что JPA Проект "Редактор диаграмм" сделал первый релиз релиза - 0,5 RC1. Просто выполните установку инструкции, размещенные на проекты wiki, и вы готовы для создания вашей модели JPA на диаграмме. Есть приятное начало работы чтобы помочь вам сделать первые шаги. Если вы хотите быстро взглянуть а затем просмотрите демонстрацию на YouTube.

An example of a diagram created by the JPA editor

Редактор диаграмм JPA является новым инкубация проекта в WTP Инкубатор. Проект инициирован SAP и существующий редактор диаграммы JPA SAP NetWeaver Developer Studio и продолжить свое будущее развитие в Сообщество Eclipse. Этот вклад основан на проекте Graphiti - новая инфраструктура графического моделирования в Eclipse.

Официальная версия 0,5 проект обеспечит стабильный выпуск от первоначального взноса. Из-за переход на Графити, есть некоторые ошибки, которые нужно очистить, и мы активно работая над ними. Тем не менее, мы решили выпустить рано услышать ваши отзывы раньше. Если вы в конце концов найдете ошибку, тогда пожалуйста сообщите об этом в инкубаторе WTP Bugzilla (использовать компонент wtp.inc.jpaeditor). Вы можете проверить список уже зарегистрированных ошибок, если ошибка уже найдена - мы активно тестируя на данный момент.

Пожалуйста, обратите внимание, что в настоящее время JPA Редактор диаграмм поддерживает только JPA 1.0 проекты. Это означает, что вы не будете см. действие "Открытая диаграмма" в контекстное меню проектов JPA 2.0. JPA 2.0, безусловно, находится на экране нашего радара. Мы начнем работать над этим после выпуска стабильной 0,5 версия.

Ответ 2

Посмотрите инструмент JPA Modeler - Netbeans, который будет соответствовать вашим требованиям:

проектирование и внедрение баз данных и объектов для проекта Java

Здесь вы можете найти демо: JPA Modeler Demo - Youtube. Он выпущен недавно и в начальной фазе.