Добавление индексов в таблицу через весну после уже созданной таблицы

Я прочитал из другого поста на stackru следующее:

Если вы используете JPA 2.1, вы можете использовать аннотацию класса @Table с ее индексами атрибутов.

@Table(indexes = { @Index(name = "IDX_MYIDX1", columnList = "id,name,surname") })

Обратите внимание, что, как говорится в документации

Они используются только в случае генерации таблицы. По умолчанию никаких дополнительных индексов нет.

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

1 ответ

Вы можете выполнить свой собственный скрипт SQL при запуске с помощью.

org.springframework.jdbc.datasource.init.DataSourceInitializer

 <bean id="startupScripts" class="org.springframework.jdbc.datasource.init.DataSourceInitializer">
    <property name="dataSource"><ref bean="dataSource"/></property>
    <property name="databasePopulator"><ref bean="use ResourceDatabasePopulator"/></property>
</bean>
Другие вопросы по тегам