В основном суммируйте гибернат по следующим дюжине аспектов, включая метод поиска Hibernate, статус объекта в Hibernate, какова три стратегии извлечения Hibernate, которые применимы, проблема, которую ORM решает, не соответствует, унаследованные унаследованные унаследованные унаследованность наследственность наследственность наследственность наследственность наследственность наследия наследственность наследственность наследие наследие наследственность наследственность наследственность наследие наследие наследственность наследственность наследия наследственность наследие наследие наследие наследственность наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие наследие. Наследование наследования наследование Три способа взаимоотношений, краткое изложение метода сеанса Find () и разница между интерфейсом запроса и т. Д. Конкретный контент заключается в следующем:
1 метод поиска с зимством
索 Поиск диаграммы навигационных объектов (в соответствии с загруженным объектом, навигации по другим объектам.)
OID Поиск (извлекает объект в соответствии с OID объекта.)
使用 HQL -поиск (с использованием языка запросов HQL объекта.
使用 Поиск QBC (используя QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QBC (QUREY BO) ) для получения объектов.
索 Local SQL -поиск (оператор запроса SQL с использованием локальной базы данных.)
Включая метод поиска Hibernate, состояние объекта в Hibernate, какова три стратегии поиска Hibernate, что применимо, возникает проблема, которую решает ORM, не соответствует, три метода сгибального отображения, связанную с наследством, связанность наследия, связанность с гибернатом, зависимость, связанная с сгибательными. Найден () Метод сеанса () Метод сеанса и краткое изложение различий в разнице между интерфейсом запроса
T Tranceient: только что создан с новым утверждением, не сохранился и не находится в кэше сеанса. Объекты Java во временном состоянии называются временными объектами.
(Постоянный: он был сохраняется и добавлен в кеш сеанса. Java -объекты в постоянном состоянии называются постоянными объектами.
Э -отдельный: он сохранялся, но больше не в кэше сеанса. Объекты Java в свободном состоянии называются бесплатными объектами.
3 Каковы три стратегии поиска Hibernate, а какой случай применим, к каким случаям применимы
Ø Немедленный поиск
Преимущества: полностью прозрачный для приложения.
Недостатки: выбора утверждений много.
Применимо: уровень класса.
Ø Задержанный поиск
Преимущества: какие объекты загружаются приложением, чтобы избежать выполнения избыточных селективных операторов и избегать объектов, которые не нужно загружать, сохранять пространство памяти и повысить эффективность поиска.
Недостатки: если приложение должно получить доступ к экземпляру агента в состоянии разрыва, должно быть обеспечено, что оно было инициализировано, когда оно прочное.
Применение: один - -мюльдипле или более связанный. Приложения не должны быть доступны немедленно или вообще не получают доступ.
接 Срочный поиск левого и внешнего соединения
Преимущества: это полностью прозрачно для приложения. С внешними соединениями количество выбранных операторов невелико.
Недостатки: объекты, которые могут быть не доступны, могут быть загружены. Сложная таблица базы данных подключение
Приложение: один -один или более связанный. Приложения необходимо немедленно получить. Система базы данных имеет хорошую производительность подключения таблицы.
4 Орм решил проблему неэклятизации (не совпадать между моделью домена и моделью отношений)
向 Модель домена -ориентирована на объект, и модель отношений связана.
Модель домена имеет отношения наследования, и модель отношений не может напрямую представлять отношения наследования.
В модели домена есть много отношений, и в модели взаимосвязи таблица соединений используется для представления все больше и больше связанных отношений.
双 Доменная модель имеет двухсторонние отношения.
精 Модель домена способствует модели тонкого размера частиц, а модель взаимосвязи выступает за крупные модели.
5 Свямерка картирования в 3 способах наследия взаимосвязи
系 Вся система наследования использует таблицу (иерархия таблицы)
张 Каждый подкласс имеет таблицу, хранящейся уникальные атрибуты подкласса (Tableper Subclass)
张 Каждый конкретный класс (Union-Subclass), сохраненный в виде полной информации в таблице (таблица на бетон)
6 сеанса Find () метод и разница между интерфейсом запроса
Метод Find () класса сеанса и интерфейс запроса поддерживают метод поиска HQL. Разница между ними заключается в том, что первые выполняют только некоторые удобные методы для простых операторов HQL -запроса Интерфейс запроса -это интерфейс запроса.
7 конфигурация ассоциации с зимней связи
Один -он
Ø Ø Ø Ø Ø
Ø Ø Ø Ø Ø
8 Кратко опишите характеристики сеанса
, Не безопасные потоки, поэтому при разработке программных архитектур следует избегать нескольких потоков, чтобы обмениваться одним и тем же экземпляром сеанса.
实 Сессионный экземпляр легкий. Это означает, что объект сеанса может быть создан или регулярно уничтожать в программе, например, выделять отдельный экземпляр сеанса для каждого клиента или выделять отдельные экземпляры сеанса для каждого рабочего подразделения.
В сеансе каждая операция базы данных выполняется в транзакции, так что вы можете разделить различные операции (даже только чтение).
9 Hibernate использует файл XML для настройки объекта-преимущества сопоставления отношений
Странство не проникает в модель верхнего домена и не проникает в более низкую модель данных. Разработчики программного обеспечения могут независимо разрабатывать модели доменов без силы, чтобы подчиняться любым спецификациям. Дизайнеры базы данных могут независимо разрабатывать модели данных без силы, чтобы соответствовать каким -либо спецификациям. Сопоставление объектов не зависит от какого-либо программы. техническое обслуживание более удобно.
10 Функция кэша сеанса
库 Уменьшите частоту доступа к базе данных. Скорость приложения из памяти из памяти, очевидно, быстрее, чем скорость запроса данных в базе данных, поэтому кэш сеанса может улучшить производительность доступа к данным.
对 Он гарантирует, что объект в кэше синхронизируется с соответствующими записями в базе данных. Когда состояние постоянного объекта в изменении кэша, сеанс не сразу выполняет соответствующий оператор SQL, который позволяет сеансу объединять несколько связанных операторов SQL в оператор SQL, чтобы уменьшить количество баз данных доступа и увеличить программу прикладной программы. производительность.
11 Проблема больше, чем во время выполнения большего количества дел
新 Первый тип обновления потерь
Грязное чтение
Ø Ø Ø Ø/Призрачное чтение
Ø Не читайте неоднократно
新 Второй тип обновления потерь
12 Разница между очисткой и пустотой сеанса
清 Кэши для очистки сеанса означает обновление базы данных синхронно в соответствии с изменениями в состоянии кэша;
S ясно - это сеанс, чтобы очистить часть или все объекты или сеанс;
13 Принцип работы Hibernate и почему
Начальный
1. Прочитать и проанализировать файл конфигурации
2. Прочитайте и проанализируйте информацию о отображении, создайте SessionFactory
3. Открыть сеанс
4. Создать транзакционную передачу
5. Постоянная операция
6. Отправить транзакцию
7. Закрыть сеанс
8. Close SessstionFactory
Ø Почему вы используете
1. упаковал код доступа JDBC к базе данных, который значительно упрощает утомительный повторяющийся код уровня доступа к данным.
2. Hibernate - это основная структура и стойкость, основанную на JDBC, и это отличная реализация ORM. Он в значительной степени упрощает кодирующую работу слоя DAO
3. Hibernate использует механизм отражения Java вместо программы по улучшению Bytecode для достижения прозрачности.
4. Производительность Hibernate очень хороша, потому что это легкая структура. Гибкость картирования превосходна. Он поддерживает различные базы данных отношений, от одного до одного до более сложных отношений.
14 с зимней задержкой нагрузки
1. Hibernate2 Задержка Загрузка реализация: а) спортивный объект б) Тип сбора
2. Hibernate3 обеспечивает функцию загрузки задержки атрибута
Когда запрашивает данные, данные не существуют, а память, и когда программа действительно управляет данными, объект существует, а память откладывается.
15 Механизм кеша Hibernate
1. Первый кэш -элемент также называется Winder Cache Hibernate, который принадлежит кешу класса транзакции приложения
2. Второй -кеш -уровень
а) Приложение и кеш
б) Распределенный кеш
Условия: Данные не будут изменены третьей стороной, размер данных находится в приемлемом диапазоне, частота обновления данных низкая, и те же данные часто используются системой и некритическими данными.
в) реализация третьего лица кэша
16 Оптимизировать Hibernate
1. Используйте две -а -одну -mane Associations, не используйте одну пару -одну.
2. Гибкое использование одной односторонней ассоциации
3. Никто -на один, замените его большим количеством пар
4. Кэш объекта конфигурации, без кеша сбора
5. One -Multi -Collection SACK SAG, большая часть множественного набора использования
6. Классы наследования используются для мультистата
7. Есть меньше полей таблицы, не бойтесь ассоциации таблиц, есть кэш второго уровня, поддерживающий талию
Вышесказанное - это общее резюме Hibernate, которое чаще встречается в интервью Java, надеясь помочь всем.