JavaRush /Blog Jawa /Random-JV /Pitakonan Wawancara Hibernate
Dr-JohnZoidberg
tingkat
Киев

Pitakonan Wawancara Hibernate

Diterbitake ing grup
Artikel iki minangka terjemahan lan perbaikan artikel manca (dhaptar sumber daya ana ing pungkasan artikel). Jawaban kanggo sawetara pitakonan ditambahi, pranala menyang sumber pihak katelu kasedhiya sing ngemot jawaban sing bisa njedhul sak proses maca. 1) Apa Hibernate? Iki minangka kerangka kanggo pemetaan obyek-relasional entitas menyang basis data relasional tradisional. Fitur utama kerangka: 1) Generasi otomatis lan nganyari tabel ing basis data; 2) Wiwit pitakon utama kanggo database (nyimpen, nganyari, mbusak lan nggoleki) ditampilake minangka metode kerangka, kode sing ditulis pangembang dikurangi sacara signifikan; 3) Nyedhiyakake panggunaan basa kaya SQL (HQL - hibernate query language). Pitakonan HQL bisa ditulis bebarengan karo obyek data (kelas POJO disiapake kanggo nggarap database). 2) Carane Hibernatembantu karo program? Hibernate ngleksanakake sawetara fitur sing ndadekake gampang gaweyan pangembang. - Salah siji fitur iki yaiku hibernate ngidini pangembang supaya ora nulis paling akeh pitakon SQL (padha wis dileksanakake, sampeyan mung kudu nggunakake cara sing nyedhiyakake kerangka). - Ing hood, Hibernate wis Bunch saka alat migunani sing Ngartekno nyepetake aplikasi, paling kacathet kang rong tingkat caching lan fine-tuning puguh lan njupuk mundur total. - Ngasilake tabel menyang database dhewe. 3) Cara kanggo ngonfigurasi karya karo Hibernate. Ana papat cara kanggo ngatur karya karo Hibernate: - nggunakake anotasi; - hibernate.cfg.xml; - hibernate.properties; - persistence.xml. Cara konfigurasi sing paling umum: liwat anotasi lan file persistence.xml, kanggo file hibernate.properties lan hibernate.cfg.xml, banjur hibernate.cfg.xml luwih penting (yen aplikasi duwe file loro, banjur setelan saka file hibernate.cfg ditampa. xml). Konfigurasi karo anotasi, sanajan trep, ora tansah bisa; contone, yen sampeyan pengin duwe konfigurasi entitas beda kanggo database beda utawa kanggo kahanan beda, sampeyan kudu nggunakake file konfigurasi xml. 4) Apa antarmuka tombol sing digunakake Hibernate? Ana limang antarmuka tombol sing digunakake ing saben aplikasi sing gegandhengan karo Hibernate: - Antarmuka sesi; - antarmuka SessionFactory; - Konfigurasi antarmuka; - Antarmuka transaksi; - Antarmuka pitakon lan Kriteria. 5) Apa peran antarmuka Sesi ing Hibernate? Sesi minangka antarmuka utama sing tanggung jawab kanggo komunikasi karo database. Iki uga mbantu nggawe obyek panjaluk kanggo entuk obyek sing terus-terusan. (obyek sing terus-terusan - obyek sing wis ana ing basis data; obyek panjaluk - obyek sing dipikolehi nalika kita nampa asil pitakon ing basis data, kanthi aplikasi kasebut bisa digunakake). Objek Sesi bisa dipikolehi saka SessionFactory: Session session = sessionFactory.openSession (); Peran antarmuka Sesi: minangka pambungkus kanggo sambungan jdbc menyang database; (https://ru.wikipedia.org/wiki/Java_Database_Connectiv..) - minangka pabrik kanggo transaksi (miturut transaksi dokumentasi resmi - ngidini aplikasi kanggo nemtokake unit karya, sing, ing intine, tegese transaksi kasebut nemtokake wates operasi sing ana gandhengane karo database). - minangka penjaga cache tingkat pertama sing wajib. 6) Apa peran antarmuka SessionFactory ing Hibernate? Saka obyek SessionFactory kita entuk obyek saka jinis Sesi. Mung ana siji SessionFactory kanggo kabeh aplikasi lan diwiwiti nalika aplikasi diwiwiti. SessionFactory nyimpen meta-data lan pitakon SQL sing asring digunakake dening aplikasi sajrone operasi. Iki uga nyimpen informasi sing ditampa ing salah sawijining transaksi lan bisa digunakake ing transaksi liyane. Objek SessionFactory bisa dipikolehi kanthi nggunakake telpon ing ngisor iki: SessionFactory sessionFactory = configuration.buildSessionFactory(); 7) Apa jinis koleksi sing kasedhiya ing Hibernate? Tas, Set, Daftar, Peta, Array. 8) Apa koleksi jinis Bag lan kenapa digunakake? Ing implementasine, jinis koleksi Bag meh padha karo Set, bedane yaiku Bag bisa nyimpen nilai duplikat. Tas nyimpen dhaptar unsur sing ora diindeks. Umume tabel ing basis data duwe indeks sing nuduhake posisi unsur data relatif siji liyane; indeks kasebut dituduhake ing tabel minangka kolom sing kapisah. Kanthi pemetaan obyek-relasional, nilai-nilai kolom indeks dipetakan menyang indeks ing Array, indeks ing Daftar, utawa kunci ing Peta. Yen sampeyan kudu entuk koleksi obyek sing ora ngemot data indeks, sampeyan bisa nggunakake koleksi saka jinis Bag utawa Set (koleksi ngemot data ing wangun unsorted, nanging bisa diurutake miturut panjalukan). 9) Apa bedane ing operasi beban (); metode? lan entuk ();? metode load(); biasane digunakake nalika sampeyan ora yakin yen obyek sing dijaluk wis ana ing database. Yen obyek ora ditemokake, banjur metode mbuwang pengecualian. Yen obyek ditemokake, metode kasebut ngasilake obyek proxy, yaiku link menyang obyek sing ana ing database (panyuwunan database durung digawe, jenis saka lazy retrieval), panyuwunan langsung menyang database nalika kita langsung ngakses obyek sing dibutuhake liwat obyek proxy. get() metode; digunakake banjur, sampeyan ora 100 persen yakin apa obyek dijaluk ing database. Ing kasus ngakses obyek sing ora ana, metode get (); bakal bali null. Yen obyek ketemu, njaluk () cara; bakal ngasilake obyek kasebut lan query database bakal digawe langsung. 10) Apa Lazy fetching ing Hibernate? Jinis checkout Lazy ing Hibernate digandhengake karo entitas godhong (anak) lan nemtokake kabijakan checkout bareng yen ana panjalukan kanggo mriksa entitas induk. Conto prasaja: Ana entitas House. Iki nyimpen informasi babagan nomer, dalan, jumlah apartemen lan informasi babagan kulawarga sing manggon ing apartemen; kulawarga iki mbentuk entitas anak sing relatif marang entitas House. Nalika kita njaluk informasi babagan Omah, bisa uga ora perlu kanggo ngerti informasi babagan kulawarga sing manggon ing kono, kene njupuk kesed nulungi, sing ngidini kita ngatur entitas House supaya informasi babagan kulawarga mung kasedhiya. marang panyuwunan, iki mega wujud panjalukan lan nyepetake aplikasi. © dev-bay Umume tabel ing basis data duwe indeks sing nuduhake posisi unsur data relatif siji liyane; indeks kasebut dituduhake ing tabel minangka kolom sing kapisah. Kanthi pemetaan obyek-relasional, nilai-nilai kolom indeks dipetakan menyang indeks ing Array, indeks ing Daftar, utawa kunci ing Peta. Yen sampeyan kudu entuk koleksi obyek sing ora ngemot data indeks, sampeyan bisa nggunakake koleksi saka jinis Bag utawa Set (koleksi ngemot data ing wangun unsorted, nanging bisa diurutake miturut panjalukan). 9) Apa bedane ing operasi beban (); metode? lan entuk ();? metode load(); biasane digunakake nalika sampeyan ora yakin yen obyek sing dijaluk wis ana ing database. Yen obyek ora ditemokake, banjur metode mbuwang pengecualian. Yen obyek ditemokake, metode kasebut ngasilake obyek proxy, yaiku link menyang obyek sing ana ing database (panyuwunan database durung digawe, jenis saka lazy retrieval), panyuwunan langsung menyang database nalika kita langsung ngakses obyek sing dibutuhake liwat obyek proxy. get() metode; digunakake banjur, sampeyan ora 100 persen yakin apa obyek dijaluk ing database. Ing kasus ngakses obyek sing ora ana, metode get (); bakal bali null. Yen obyek ketemu, njaluk () cara; bakal ngasilake obyek kasebut lan query database bakal digawe langsung. 10) Apa Lazy fetching ing Hibernate? Jinis checkout Lazy ing Hibernate digandhengake karo entitas godhong (anak) lan nemtokake kabijakan checkout bareng yen ana panjalukan kanggo mriksa entitas induk. Conto prasaja: Ana entitas House. Iki nyimpen informasi babagan nomer, dalan, jumlah apartemen lan informasi babagan kulawarga sing manggon ing apartemen; kulawarga iki mbentuk entitas anak sing relatif marang entitas House. Nalika kita njaluk informasi babagan Omah, bisa uga ora perlu kanggo ngerti informasi babagan kulawarga sing manggon ing kono, kene njupuk kesed nulungi, sing ngidini kita ngatur entitas House supaya informasi babagan kulawarga mung kasedhiya. marang panyuwunan, iki mega wujud panjalukan lan nyepetake aplikasi. © dev-bay Umume tabel ing basis data duwe indeks sing nuduhake posisi unsur data relatif marang siji liyane; indeks kasebut dituduhake ing tabel minangka kolom sing kapisah. Kanthi pemetaan obyek-relasional, nilai-nilai kolom indeks dipetakan menyang indeks ing Array, indeks ing Daftar, utawa kunci ing Peta. Yen sampeyan kudu entuk koleksi obyek sing ora ngemot data indeks, sampeyan bisa nggunakake koleksi saka jinis Bag utawa Set (koleksi ngemot data ing wangun unsorted, nanging bisa diurutake miturut panjalukan). 9) Apa bedane ing operasi beban (); metode? lan entuk ();? metode load(); biasane digunakake nalika sampeyan ora yakin yen obyek sing dijaluk wis ana ing database. Yen obyek ora ditemokake, banjur metode mbuwang pengecualian. Yen obyek ditemokake, metode kasebut ngasilake obyek proxy, yaiku link menyang obyek sing ana ing database (panyuwunan database durung digawe, jenis saka lazy retrieval), panyuwunan langsung menyang database nalika kita langsung ngakses obyek sing dibutuhake liwat obyek proxy. get() metode; digunakake banjur, sampeyan ora 100 persen yakin apa obyek dijaluk ing database. Ing kasus ngakses obyek sing ora ana, metode get (); bakal bali null. Yen obyek ketemu, njaluk () cara; bakal ngasilake obyek kasebut lan query database bakal digawe langsung. 10) Apa Lazy fetching ing Hibernate? Jinis checkout Lazy ing Hibernate digandhengake karo entitas godhong (anak) lan nemtokake kabijakan checkout bareng yen ana panjalukan kanggo mriksa entitas induk. Conto prasaja: Ana entitas House. Iki nyimpen informasi babagan nomer, dalan, jumlah apartemen lan informasi babagan kulawarga sing manggon ing apartemen; kulawarga iki mbentuk entitas anak sing relatif marang entitas House. Nalika kita njaluk informasi babagan Omah, bisa uga ora perlu kanggo ngerti informasi babagan kulawarga sing manggon ing kono, kene njupuk kesed nulungi, sing ngidini kita ngatur entitas House supaya informasi babagan kulawarga mung kasedhiya. marang panyuwunan, iki mega wujud panjalukan lan nyepetake aplikasi. © dev-bay pitakon langsung menyang database nalika kita langsung ngakses obyek sing dibutuhake liwat obyek proxy. get() metode; digunakake banjur, sampeyan ora 100 persen yakin apa obyek dijaluk ing database. Ing kasus ngakses obyek sing ora ana, metode get (); bakal bali null. Yen obyek ketemu, njaluk () cara; bakal ngasilake obyek kasebut lan query database bakal digawe langsung. 10) Apa Lazy fetching ing Hibernate? Jinis checkout Lazy ing Hibernate digandhengake karo entitas godhong (anak) lan nemtokake kabijakan checkout bareng yen ana panjalukan kanggo mriksa entitas induk. Conto prasaja: Ana entitas House. Iki nyimpen informasi babagan nomer, dalan, jumlah apartemen lan informasi babagan kulawarga sing manggon ing apartemen; kulawarga iki mbentuk entitas anak sing relatif marang entitas House. Nalika kita njaluk informasi babagan Omah, bisa uga ora perlu kanggo ngerti informasi babagan kulawarga sing manggon ing kono, kene njupuk kesed nulungi, sing ngidini kita ngatur entitas House supaya informasi babagan kulawarga mung kasedhiya. marang panyuwunan, iki mega wujud panjalukan lan nyepetake aplikasi. © dev-bay pitakon langsung menyang database nalika kita langsung ngakses obyek sing dibutuhake liwat obyek proxy. get() metode; digunakake banjur, sampeyan ora 100 persen yakin apa obyek dijaluk ing database. Ing kasus ngakses obyek sing ora ana, metode get (); bakal bali null. Yen obyek ketemu, njaluk () cara; bakal ngasilake obyek kasebut lan query database bakal digawe langsung. 10) Apa Lazy fetching ing Hibernate? Jinis checkout Lazy ing Hibernate digandhengake karo entitas godhong (anak) lan nemtokake kabijakan checkout bareng yen ana panjalukan kanggo mriksa entitas induk. Conto prasaja: Ana entitas House. Iki nyimpen informasi babagan nomer, dalan, jumlah apartemen lan informasi babagan kulawarga sing manggon ing apartemen; kulawarga iki mbentuk entitas anak sing relatif marang entitas House. Nalika kita njaluk informasi babagan Omah, bisa uga ora perlu kanggo ngerti informasi babagan kulawarga sing manggon ing kono, kene njupuk kesed nulungi, sing ngidini kita ngatur entitas House supaya informasi babagan kulawarga mung kasedhiya. marang panyuwunan, iki mega wujud panjalukan lan nyepetake aplikasi. © dev-bay
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION