2016-08-14 6 views
0

Hibernateがスキーマの更新を行うのと同じように、エンティティがバインドされる直前に独自のスキーマの変更(varcharをテキストに変換してインデックスを作成)を試みています。私自身のカスタムSQLをhibernateのスキーマ更新自体に含めることができれば理想的です。例えば、既存のhibernateクラスを拡張し、アプリケーションが組み込みのクラスの代わりに私のものを使用できるようにするなどです。Hibernateで独自のスクリプトを実行します。スキーマの更新が行われます

org.hibernate.internal.SessionFactoryImplはfinalです。

独自のorg.hibernate.tool.schema.spi.SchemaMigratorを実装することができます。誰もこれを前に試しましたか?

私は春のブートv1.4.0.M3を使用しています。特定の依存関係がある場合は、そうは思わないと思います。

乾杯!

答えて

1

スプリングブートにはJDBCイニシャライザがあり、起動時に.sqlスクリプトを実行します。 Flywayの使用をお勧めします。これは、データベースのバージョンと実行されたスクリプトを追跡します。

http://docs.spring.io/spring-boot/docs/current/reference/html/howto-database-initialization.html#howto-initialize-a-database-using-spring-jdbc

+0

私はフライウェイから来ています。私はFlywayを削除したので、エンティティを見てスキーマを自動生成しません。自分でDDLを書く必要があります。私はそのルートを望んでいません。私は、既存のhbb2ddl機能をそのまま維持し、その上に拡張したいと考えています。 – prageeth

+0

SpringのJDBC初期化機能を使用することをお勧めします。やってみます。私が成功すれば、これを正しい答えとして受け入れます。 – prageeth

関連する問題