Использовать представления базы данных в Hibernate

У меня есть стол с именем Samples в моей БД, и у него есть столбец с именем baseline которая является логической переменной. Я хотел искать среди строк, которые имеют baseline установить как 1, поэтому я создал представление в БД (MySQL). Теперь вместо того, чтобы запрашивать Samples таблица, я хочу запросить это представление (имена как Baselines).

Нужно ли добавить объявление для этого представления в файле hibernate cfg? Кроме того, мне нужно создать еще один класс Java с именем Baselines за это?

2 ответа

Решение

Hibernate может обрабатывать представления так же, как и любые таблицы. Просто определите класс сущности на основе этого представления (Baselines, как ты говоришь).

Самая распространенная проблема с представлениями заключается в том, что некоторые механизмы баз данных не могут обрабатывать вставки или обновления в представлениях, поэтому имейте это в виду, если ваше приложение пытается изменить данные. Я не знаю, способен ли MySQL к этому.

Альтернативой использованию представления является использование фильтров Hibernate, которые делают то же самое, но на уровне сеанса Hibernate.

Я сделал нечто подобное между NHiberNate и SQL Server.

Я рассматривал вид так же, как обычные таблицы.

Другие вопросы по тегам