Úvod k otázkám a odpovědi v režimu spánku Hibernate
Hibernace je nástroj pro mapování objektů, který pomáhá zjednodušit spojení aplikace s databází. Poskytuje mapování objektu java pomocí databázových tabulek znamená, že mapuje třídu java s tabulkou v databázi. Název tabulky a třídy závisí na výběru vývojáře. Vývojář má funkci, která dá jméno podle požadavku podnikání. Hladké připojení databáze k aplikaci. Hibernace také poskytuje databázový nezávislý dotazovací jazyk, který je známý jako dotazovací jazyk HQL. Jedná se o objektově orientovanou verzi jazyka SQL, která pomáhá aplikaci snadno migrovat s dalšími databázemi v případě změny databáze v budoucnu.
Hibernace také nabízí mnoho dalších funkcí, jako je automatické vytváření tabulek, jedná se o jednu z nejvýkonnějších funkcí hibernace. Abychom to podpořili pouze, musíme udělat malou konfiguraci v XML souboru poté, co všechno postará pouze hibernace. Hibernace do špinavé kontroly znamená, že vždy zkontroluje stav objektu Java, pokud zjistí jakékoli změny stavu objektu, který automaticky aktualizuje databázi. má atomově povolený úlovek druhé úrovně, což pomáhá zlepšit výkon aplikace. Toto jsou silné funkce Hibernace.
Nyní, pokud hledáte práci, která souvisí s režimem Hibernace, musíte se připravit na otázky týkající se rozhovoru v režimu Hibernace v roce 2019. Je pravda, že každý pohovor se liší podle různých profilů práce. Zde jsme připravili důležité otázky a odpovědi na pohovor Hibernate 2019, které vám pomohou dosáhnout úspěchu v rozhovoru.
Níže je uvedeno 10 důležitých otázek a odpovědí na Hibernate, které jsou často kladeny při pohovoru. Tyto otázky jsou rozděleny do dvou částí:
Část 1 - Hibernate Interview Otázky (základní)
Tato první část se zabývá základními otázkami a odpověďmi v režimu spánku Hibernate.
1) Rozlišujte mezi získáním a načtením v režimu spánku?
Odpovědět:
Získat přístupy metody vždy, pokud nenajde objekt v mezipaměti. Poskytuje zcela inicializovaný objekt, který může zahrnovat několik databázových volání, což může zhoršit výkon aplikace, zatímco metoda load může vrátit objekt proxy, pokud není objekt v mezipaměti, zasáhne databázi pro všechny metody objektu kromě metody getId () . Pokud objekt nikde nenajde metoda get, vrací nulovou hodnotu, zatímco metoda load vyvolá výjimku ObjectNotFoundException. Takže můžeme tyto metody použít podle našich požadavků.
2) Jaký je rozdíl mezi, trvalým, přechodným a odděleným objektem?
Odpovědět:
V režimu Hibernace jsou níže uvedeny 3 stavy objektu.
Jsou to přechodné, trvalé, oddělené. Jakýkoli objekt bude ve stavu perzistence, pokud je spojen s relací režimu spánku. jakákoli změna v aktuálním objektu se projeví v databázi na základě naší strategie vyprázdnění. Automatické splachování nastane, kdykoli se změní jakákoli vlastnost objektu nebo explicitní splachování voláním metody flush () třídy Session V případě instance, která byla dříve asociována s nějakým přetrvávajícím kontextem, ale nyní již není spojena, je odpojený stav.
Přejdeme k dalším otázkám Hibernate Interview.
3) Je možné učinit Hibernate Entity Class finále?
Odpovědět:
Ano, je možné dokončit třídu Hibernate Entity, ale není to dobrá praxe. Protože Hibernate používá vzor proxy pro zlepšení výkonu aplikace a v případě líného přidružení, tím, že provede třídu entit jako finální, nebude již Hibernate moci používat proxy, důvodem je to, že Java neumožňuje rozšíření konečné třídy; omezuje možnosti zlepšení výkonu. Tento problém však můžeme vyřešit, pokud je naše trvalá třída implementací rozhraní, které deklaruje všechny veřejné metody definované ve třídě Entity.
4) Vysvětlete mezipaměť dotazu?
Odpovědět:
Toto jsou běžné dotazy na pohovor Hibernate Interview. Mezipaměť dotazu se používá k uložení výsledku dotazu SQL pro budoucí výzvy ke zlepšení výkonu. Může být také použit spolu s druhou úrovní mezipaměti hibernace pro zlepšení výkonu aplikace. Hibernate má mnoho řešení pro ukládání do mezipaměti s otevřeným zdrojovým kódem k implementaci mezipaměti dotazů.
5) Proč je nutné poskytovat konstruktérům argumentů v entitách?
Odpovědět:
Třída entity musí obsahovat konstruktor bez argumentů, protože rámec Hibernate vytváří objekt těchto tříd pomocí rozhraní Reflection API voláním nové metody Instance () třídy Class. Okamžitá výjimka bude vyvolána touto metodou, pokud nenajde konstruktor argumentů uvnitř třídy Entity.
Část 2 - Hibernate Interview Question (Advanced)
Podívejme se nyní na pokročilé dotazy týkající se rozhovoru v režimu spánku.
6) Vysvětlete metodu lock () relace v režimu Hibernace?
Odpovědět:
Metoda lock () třídy relace se používá k opětovnému připojení objektu bez aktualizace nebo synchronizace s databází. Při používání této metody musíme být velmi opatrní. Při synchronizaci s databází můžeme během opětovného připojení vždy použít metodu update ().
7) Vysvětlete mezipaměť druhé úrovně v režimu spánku?
Odpovědět:
Mezipaměť druhé úrovně je udržována na úrovni Session Factory a používá se ke zlepšení výkonu aplikace uložením několika databázových výletů. Je také k dispozici pro celou aplikaci, nikoli pro jakoukoli konkrétní relaci
Přejdeme k dalším otázkám Hibernate Interview.
8) Jaké jsou výhody hibernace oproti JDBC?
Odpovědět:
Hibernace může být použita s jakýmkoli typem databáze, protože je nezávislá na databázi, zatímco v JDBC musí vývojář psát dotazy specifické pro databázi.
V režimu spánku nemusíme být odborníkem na psaní složitých typů dotazů, protože HQL usnadňuje proces psaní dotazů, zatímco v případě JDBC musí vývojář psát a vyladit dotazy.
V režimu hibernace není nutné vytvářet oblasti připojení, protože režim hibernace automaticky zpracovává veškeré připojení. V JDBC musí být oblasti připojení vytvořeny vývojářem.
9) Kolik způsobů identifikace objektů a jaké jsou různé způsoby přitažení v režimu spánku?
Odpovědět:
Toto jsou nejčastěji kladené dotazy na pohovor s Hibernate v rozhovoru. Pro identifikaci objektu jsou níže uvedeny tři způsoby.
Použití identity databáze: Relační databázové objekty lze identifikovat, pokud představují stejný řádek.
Použití Object Equality: Použití metody equals ().
Použití identity objektu: Použití == operátor.
V režimu spánku jsou k dispozici následující strategie načítání:
Dávkové načítání
Připojte se k načítání
Dílčí výběr Načítání
Vyberte Načítání
10) Řekněte názvu několika rozhraní rozhraní Hibernate?
Odpovědět:
Session Factory: je to neměnná mezipaměť bezpečných vláken kompilovaných mapování pro jednu databázi. Musíme ji jednou inicializovat, pak ji můžeme uložit do mezipaměti a znovu ji použít. jeho instance se používá k získání objektů relace pro různé databázové operace.
Relace je jednoreťazcový objekt s krátkou životností, který představuje rozhraní mezi aplikací a trvalým úložištěm. Zabalí JDBC java.sql.Connection a pracuje jako továrna na Transaction. Relaci byste měli otevřít pouze tehdy, je-li to nutné, a ukončit ji, jakmile ji dokončíte. Objekt relace je rozhraní mezi aplikačním kódem java a hibernací a poskytuje různé metody pro operace CRUD v Javě.
Transakce): jedná se o objekt s jedním vláknem a krátkou životností používaný aplikací java k určení atomových jednotek práce. Abstrakt aplikace od podkladové transakce JTA nebo JDBC. V některých případech může relace obsahovat více transakcí.
Doporučené články
Toto byl průvodce seznamem otázek a odpovědí na Hibernate Interview, aby uchazeč mohl snadno vypořádat s těmito otázkami na Hibernate. Zde v tomto příspěvku jsme studovali top Hibernate Interview Otázky, které jsou často kladeny v rozhovorech. Další informace naleznete také v následujících článcích -
- Interview Otázky WCF
- Docker Interview Otázky
- Interview Otázky pro jarní rámec
- Otázky k rozhovoru PLSQL