私のアプリケーションは、組み込みモードで JPA と JavaDB を使用しています。ファイルでは、次のpersistence.xml
プロパティを使用します。
<property name="javax.persistence.jdbc.url" value="jdbc:derby:meuspiladb;create=true" />
そのため、まだ存在しない場合は空のデータベースが作成されます。
現在create_tables.sql
、テーブルを作成するための SQL コードを配置したファイルがあり、データベースの作成後に手動で実行しています。これを自動にしたいのですが、方法がわかりません。
データベースが新しい場合は、テーブルを作成する必要があります。Java コードからそれらを作成する最良の方法は何ですか?
私のpersistence.xmlファイル:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="MeusPila3_PU" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>br.meuspila.corretora.Corretora</class>
<class>br.meuspila.ativo.Ativo</class>
<class>br.meuspila.bolsa.Bolsa</class>
<class>br.meuspila.movimento.Movimento</class>
<class>br.meuspila.provento.Provento</class>
<class>br.meuspila.operacao.Operacao</class>
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:derby:meuspiladb;create=true" />
<property name="javax.persistence.jdbc.user" value="APP"/>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"/>
</properties>
</persistence-unit>
</persistence>