Возможно ли создать таблицу в бд через JpaRepository

Есть репо наследующий данный интерфейс, через соответствующий ему service благодаря стандартным методам JpaRepository я могу добавлять, удалять и изменять данные в существующих таблицах бд. Но, что если я хочу создать новую таблицу в моей базе данных и удалить существующую ? Какие методы JpaRepository нужно использовать для этого ?


Ответы (1 шт):

Автор решения: Stan

Создайте сервис который будет это делать, репозитории предназначены для работы с сущностями. Если у вас появляются специфичные задачи, то можно получить EntityManager.

Что то вроде:

@Service
public class SomeService {
    @PersistenceContext
    private EntityManager entityManager;

    @Transactional
    private void createTable(String sql) {
        entityManager.createNativeQuery(sql).executeUpdate();
    }
    
    @Transactional
    private void dropTable(String name) {
        entityManager.createNativeQuery("DROP TABLE ...").executeUpdate();
    }
}
→ Ссылка