#java #seam
#java #шов
Вопрос:
В настоящее время я работаю над проектом seam с использованием инструментов eclipse jpa; возможно ли автоматически генерировать таблицы sql из моих определений сущностей? Если да, то как мне этого добиться?
Комментарии:
1. Эта документация может помочь.
Ответ №1:
Это зависит от используемой вами реализации JPA. С помощью Hibernate вы можете указать ‘ create
‘ или ‘ update
‘ в hibernate.hbm2ddl.auto
свойствах в persistence.xml
:
<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
<persistence-unit name="yourPersistenceUnit" transaction-type="JTA">
<description>Your Persistence Unit</description>
<jta-data-source>java:/DefaultDS</jta-data-source>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="hibernate.hbm2ddl.auto" value="create"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.transaction.flush_before_completion" value="true"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
</properties>
</persistence-unit>
</persistence>
Возможными значениями для hibernate.hbm2ddl.auto
свойства являются:
create
: создание таблиц базы данных и индексов при запускеcreate-drop
: создавайте таблицы базы данных и индексы при запуске и удаляйте при завершении работыupdate
: при запуске приложения проверьте схему базы данных и обновите по мере необходимости, добавив отсутствующие таблицы и столбцыvalidate
: при запуске приложения проверьте схему базы данных и завершите работу с ошибкой, если отсутствует какая-либо таблица или столбец.