top 25 jdbc interview questions
Ta vadnica ponuja pogosto zastavljena vprašanja in odgovore na intervju z JDBC z razlagami, ki vam pomagajo pri pripravi na razgovor:
V JDBC paketna obdelava in shranjeni postopek vadnica Serija vadnic JDBC smo se naučili metod za paketno obdelavo v Javi z gonilnikom JDBC in se tudi naučili ustvariti shranjene postopke in jih poklicati iz Java programa.
JDBC je pogosto uporabljena kratka oblika za Java Database Connectivity. Z uporabo JDBC lahko komuniciramo z različnimi vrstami relacijskih baz podatkov, kot so Oracle, MySQL, MS Access itd.
Ta članek vam bo pomagal pri iskanju intervjuja JDBC. Tu smo razložili vse pomembne koncepte JDBC.
Pogosta vprašanja o intervjujih JDBC
V # 1) Kaj je JDBC?
Odgovor: Java Database Connectivity je neuradno znan kot JDBC. Uporablja se za izvajanje operacij DB v zbirki podatkov iz aplikacije Java. Podpira interakcijo s katero koli bazo podatkov, kot so Oracle, MySQL, MS Access itd.
V # 2) Kakšna je uporaba gonilnika JDBC?
Odgovor: Je programska komponenta in se uporablja za uporabo aplikacije Java za interakcijo z bazo podatkov.
V # 3) Katere so različne vrste gonilnikov v JDBC?
Odgovor: Na trgu obstajajo 4 različni gonilniki JDBC.
To so:
- Tip I: Most JDBC - ODBC
- Tip II: Izvorni API - polovični gonilnik Java
- Tip III: Omrežni protokol - popolnoma gonilnik Java
- Tip IV: Tanek gonilnik - popolnoma gonilnik Java
Tip I: most JDBC-ODBC
Most JDBC-ODBC se bo obnašal kot vmesnik med odjemalcem in strežnikom DB. Naročnik naj vanj vstavi gonilnik JDBC-ODBC. Baza podatkov mora podpirati gonilnik ODBC. Če nas ne skrbi namestitev gonilnika v odjemalskem sistemu, bomo uporabili ta gonilnik.
Tip II: Izvorni API: polovični gonilnik Java
Je skoraj kot gonilnik JDBC-ODBC. Namesto gonilnika ODBC tukaj uporabljamo izvorni API. Uporabljajo se knjižnice odjemalske baze podatkov.
Tip III: omrežni protokol
Deluje kot tristopenjski pristop za dostop do baze podatkov. Za povezavo z DB bo uporabljen vmesni strežnik. Klici metode JDBC pošljejo podatke vmesnemu strežniku, nato bo strežnik komuniciral z DB.
Tip IV: tanek voznik
Popolnoma je napisano v Javi. Izrecno pretvori klice metode JDBC v protokol baze podatkov, ki ga določi prodajalec. Danes trgovec z zbirkami podatkov svojim strankam ponuja to vrsto gonilnikov. Programerji se torej ne zanašajo na druge vire. Omogoča večje zmogljivosti kot drugi vozniki.
Q # 4) Katero vrsto gonilnika JDBC uporablja večina ljudi?
Odgovor: Tanek gonilnik tipa IV se uporablja v večini aplikacij. Razvil ga je prodajalec baze podatkov sam, tako da ga lahko razvijalci uporabljajo neposredno, ne da bi bili odvisni od drugih virov. Omogoča preprost in enostaven razvoj. Omogoča večje zmogljivosti kot drugi vozniki.
V # 5) Katere so vrste arhitekture JDBC?
Odgovor: JDBC podpira 2 vrsti modelov obdelave za dostop do DB.
To so:
- Dvotirna arhitektura: Tu se programi Java izrecno povezujejo z DB. Za povezavo z DB ne potrebujemo nobenega posrednika, kot je strežnik aplikacij, razen gonilnika JDBC. Znana je tudi kot arhitektura odjemalca in strežnika.
- Troslojna arhitektura: Popolnoma je obratna dvotirni arhitekturi. Med gonilnikom JDBC ali programom Java in bazo podatkov ne bo eksplicitne komunikacije. Kot posrednik med njimi se uporablja aplikacijski strežnik. Program Java bo zahtevo poslal na strežnik aplikacij, ta pa jo bo poslal in prejel odgovor v / iz DB.
V # 6) Katere so komponente JDBC?
Odgovor: V JDBC so na voljo 4 glavne komponente.
To so:
- API JDBC
- Upravitelj gonilnikov JDBC
- JDBC Test Suite
- Most JDBC - ODBC
V # 7) Kakšni so koraki za povezavo z JDBC?
Odgovor: Obstaja 6 osnovnih korakov za povezavo z DB v Javi. Ti so navedeni spodaj:
- Uvozni paket
- Naloži gonilnik
- Vzpostavite povezavo
- Ustvarjanje in izvajanje izjave
- Pridobite rezultate
- Tesna povezava
V # 8) Kateri podatkovni tipi se uporabljajo za shranjevanje slike in datoteke v tabeli zbirke podatkov?
Odgovor:
- Vrsta podatkov BLOB se uporablja za shranjevanje slike v DB. Video in avdio posnetke lahko shranimo tudi v podatkovnem tipu BLOB. Uporablja se za shranjevanje binarne vrste podatkov.
- Vrsta podatkov CLOB se uporablja za shranjevanje datoteke v DB. Uporablja se za shranjevanje vrste znakovnih podatkov.
V # 9) Kaj je DriverManager v JDBC?
Odgovor: DriverManager je vgrajeni razred, ki je prisoten v paketu java.sql. Uporabljal se bo kot posrednik med aplikacijo Java in DB, ki jo povezujemo / uporabljamo v naši kodi. Kot prvi korak moramo voznik registrirati ali naložiti v DriverManager. Potem bo gonilnik na voljo za uporabo v aplikaciji.
Glavna naloga DriverManagerja je naložiti razred gonilnikov zbirke podatkov in ustvariti povezavo z DB.
Gonilnika lahko registrirate ali naložite na dva načina:
- Class.forName ()
- DriverManager.registerDriver ()
V # 10) Kakšna je razlika med vmesnikoma Statement in PreparedStatement.
Odgovor: Spodnja tabela pojasnjuje razlike:
IZJAVA | PRIPRAVLJENA IZJAVA |
---|---|
Uporabljala se bo predvsem za izvajanje statičnih stavkov SQL | Uporabljala se bo predvsem za izvajanje vnaprej pripravljenih stavkov SQL |
Parametrov med izvajanjem ne bo sprejemal | Med izvajanjem bo sprejemal različne parametre |
Njegova zmogljivost je manjša v primerjavi s pripravljeno izjavo | Njegova zmogljivost je višja od izjave, saj izvaja vnaprej prevedene stavke SQL |
Primerno je za izvajanje stavkov DDL, kot so CREATE, DROP, ALTER in TRUNCATE | Primerno je za izvajanje stavkov DML, kot so INSERT, UPDATE in DELETE |
Ni ga mogoče uporabiti za shranjevanje ali pridobivanje slike in datoteke v DB | Uporablja se lahko za shranjevanje ali pridobivanje slike in datoteke v DB |
Izvaja SQL Injection | Preprečuje SQL Injection |
Predlagano branje = >> Izjava in izjava JDBC
Q # 11) Pojasnite razliko med execute (), executeQuery () in executeUpdate ().
Odgovor:
executeQuery () | executeUpdate () | Izvedi () |
---|---|---|
Uporablja se za izvajanje stavkov SQL, ki pridobijo nekatere podatke iz DB | Uporablja se za izvajanje stavkov SQL, ki bodo posodobili ali spremenili podatke v DB | Uporablja se za izvajanje kakršnih koli stavkov SQL |
Vrne objekt resultSet | Vrne celoštevilčno vrednost, ki predstavlja št. prizadetih vrstic | Vrne logično vrednost TRUE - vrne objekt resultSet FALSE - vrne vrednost int ali nič |
Uporablja se za izvajanje samo poizvedbe SELECT | Uporablja se za izvajanje samo poizvedbe, ki ni SELECT | Uporablja se za izvajanje poizvedb SELECT in non-SELECT |
V # 12) Kako poklicati shranjene postopke v JDBC?
Odgovor: Shranjene postopke SQL lahko izvajamo prek vmesnika CallableStatement. Objekt CallableStatement je mogoče ustvariti z uporabo metode prepaCall () vmesnika Connection.
V # 13) Kaj je vmesnik ResultSet?
Odgovor: Vmesnik ResultSet se uporablja za shranjevanje izhodnih podatkov po izvedbi poizvedbe SQL. Objekt ResultSet ohranja točko kazalca na rezultatih. Kazalec je privzeto usmerjen pred prvo vrstico rezultatov. Podatke lahko prehodimo tudi v predmetih nabora rezultatov.
sql vprašanja in odgovori za izkušene
Sintaksa:
Vmesnik izjave:
Statement stmnt1 = conn.createStatement(); ResultSet resultset = stmnt1.executeQuery(“Select * from EMPLOYEE”);
PreparedStation Vmesnik:
PreparedStatement pstmnt1 = conn.prepareStatement(insert_query); ResultSet resultset = pstmnt1.executeQuery(“Select * from EMPLOYEE”);
V # 14) Katere so vrste ResultSet?
Odgovor: V programu ResultSet obstajajo 3 vrste. To so:
katera je najboljša programska oprema za oddaljeni dostop
- TIP_FORWARD_ONLY: To je privzeta možnost. Kazalec se bo premikal od začetka do konca.
- TYPE_SCROLL_INSENSITIVE: Pri tej vrsti se kazalka premika v smeri naprej in nazaj. Podatkovni niz ima podatke, ko jih poizvedba SQL vrne.
- TYPE_SCROLL_SENSITIVE: Je enak TYPE_SCROLL_INSENSITIVE, razlika je v tem, da bo imel posodobljene podatke med ponovitvijo predmeta nabora rezultatov.
V # 15) Kateri so načini sočasnosti v ResultSet?
Odgovor: V ResultSet obstajata 2 različna načina sočasnosti. To so:
- ResultSet.CONCUR_READ_ONLY : To je privzeti način sočasnosti. Na voljo je možnost samo za branje. Posodobitev ni mogoča.
- ResultSet.CONCUR_UPDATABLE: Posodobitev je možna.
V # 16) Kako preveriti, ali baza podatkov podpira način sočasnosti?
Odgovor: Na voljo imamo metodo supportResultSetConcurrency (), ki bo uporabljena za preverjanje, ali baza podatkov podpira dani tip in sočasne načine.
V # 17) Ali lahko podatke določene vrstice dobimo iz nabora rezultatov?
Opomba: ResultSet vsebuje podatke nabora vrstic
Odgovor: Da, podatke določene vrstice lahko dobimo iz resultSet z uporabo metode relative (). Kazalko bo premaknil v določeno vrstico v smeri naprej ali nazaj od trenutne vrstice. Če je bila dana pozitivna vrednost, se bo premaknila naprej. Če je podana negativna vrednost, se bo premaknila v smeri nazaj.
V # 18) Kakšna je uporaba metod pridobivanja in nastavitve v ResultSet?
Odgovor:
Metode pridobivanja: Uporabljajo se za pridobivanje vrednosti določenega stolpca tabele iz ResultSet. Kot parameter je treba poslati vrednost indeksa stolpca ali ime stolpca. Običajno bomo metodo getter predstavili kot metode getXXX ().
Primer:
- int getInt (niz Ime stolpca): Uporablja se za pridobivanje vrednosti določenega stolpca Indeks in podatkovni tip int kot povratni tip.
Setter metode: Vrednost v bazi lahko nastavimo z metodami nastavitve ResultSet. Podobno je getter metodam, toda tukaj moramo posredovati vrednosti / podatke za določen stolpec, ki ga vstavimo v bazo podatkov, in vrednost indeksa ali ime stolpca tega stolpca. Običajno bomo metodo nastavitve predstavljali kot metode setXXX ().
Primer:
- void setInt (int Column_Index, int Data_Value): Uporablja se za vstavljanje vrednosti določenega stolpca Indeks z vrednostjo int.
V # 19) Kaj je glavni namen vmesnika ResultSetMetaData?
Odgovor: Ta vmesnik ponuja več informacij o ResultSet. Vsak objekt ResultSet je povezan z enim objektom ResultSetMetaData.
Ta objekt bo imel podrobnosti o lastnostih stolpcev, kot so tip stolpca, ime stolpca, število stolpcev v tej tabeli, ime tabele, ime sheme itd., Metoda GetMetaData () predmeta ResultSet se uporablja za ustvarjanje Objekt ResultSetMetaData.
Sintaksa:
PreparedStatement pstmntobj = conn.prepareStatement(insert_query); ResultSet resultsetobj = pstmntobj.executeQuery(“Select * from EMPLOYEE”); ResultSetMetaData rsmd obj= resultsetobj.getMetaData();
V # 20) Kaj je DatabaseMetaData?
Odgovor: Vmesnik DatabaseMetaData daje informacije o zbirki podatkov, ki jo uporabljamo. Dobili bomo naslednje informacije - Ime baze podatkov, različica zbirke podatkov itd.
V # 21) Kaj je lastnost ACID?
Odgovor:
- A – Atomicnost -> Če so se vse poizvedbe uspešno izvedle, se bodo podatki predali, sicer se ne bodo zavezali.
- C – Doslednost -> Podatki morajo biti skladni po kateri koli transakciji.
- I – Izolacija -> Vsaka transakcija mora biti izolirana.
- D – Trajnost -> Če je transakcija zavezana enkrat, mora biti na voljo vedno (če ni prišlo do sprememb)
V # 22) Kako spremeniti vrednost načina samodejnega sprejemanja?
Odgovor: Privzeto je vrednost AutoCommit TRUE. Po izvedbi stavka SQL bo samodejno dodeljen. Z metodo setAutoCommit () lahko vrednost spremenimo v AutoCommit.
V # 23) Kakšna je uporaba metod za prevzem in vrnitev?
Odgovor:
Način commit (): Za urejanje podatkov imamo v Javi metodo commit (). Ko je izvedba SQL končana, lahko pokličemo metodo commit.
Sintaksa: connectionobj.commit ();
Metoda vračanja (): Za vrnitev podatkov v Javi imamo metodo rollback (). Povratek pomeni razveljavitev sprememb. Če kateri od stavkov SQL ne uspe, lahko za razveljavitev sprememb pokličemo metodo vračanja.
Sintaksa: connectionobj.rollback ();
V # 24) Kaj je točka shranjevanja in kakšne metode imamo v shrambi JDBC?
Odgovor: Shranjevalna točka se uporablja za ustvarjanje kontrolnih točk v transakciji in nam omogoča, da izvedemo povratno vrnitev do določene shrambene točke. Ko je transakcija zavezana ali podprta, se shranjevalna točka, ki je bila ustvarjena za transakcijo, samodejno uniči in postane neveljavna.
Metode za Savepoint:
- metoda setSavepoint (): Uporablja se za ustvarjanje točke shranjevanja, lahko uporabimo metodo rollback (), da razveljavimo vse spremembe do točke shranjevanja.
- releaseSavepoint () metoda: Uporablja se za odstranitev dane točke shranjevanja.
V # 25) Naštejte nekaj izjem, ki spadajo pod SQLException?
Odgovor:
- SQLNonTransientException
- SQLTransientException
- SQLRecoverableException
>> Kliknite tukaj za več informacij o zgornjih izjemah.
V # 26) Kaj je paketna obdelava in kako to narediti v JDBC?
Odgovor: Paketna obdelava je postopek izvajanja več stavkov SQL v eni transakciji. S tem boste zmanjšali čas komunikacije in povečali zmogljivost. Veliko olajša obdelavo velike količine podatkov.
Prednosti serijske obdelave:
- Izboljšajte zmogljivost
- Skladnost podatkov
Kako izvesti serijsko obdelavo:
Za izvajanje paketne obdelave imamo v Javi metode addBatch () in executeBatch (). Ti dve metodi sta prisotni v razredih Statement in PreparedStatement.
V # 27) Kakšen je shranjeni postopek?
Odgovor: Skupina poizvedb SQL, ki se izvajajo kot ena enota za izvajanje določene naloge, je znana kot shranjeni postopek. Lahko prenesemo 3 različne vrste parametrov. Vsak postopek je predstavljen z njegovim imenom. Tako bi moralo biti ime postopka unikatno.
>> Za več informacij o shranjenem postopku glejte to povezava .
V # 28) Katere vrste parametrov so v shranjenih postopkih?
Odgovor: V shranjenih postopkih so na voljo tri vrste parametrov. To so:
- IN: Uporablja se za posredovanje vhodnih vrednosti postopku.
- ZUNAJ: Uporablja se za pridobitev vrednosti iz postopka.
- VHOD / IZHOD: Uporablja se za posredovanje vhodnih vrednosti in pridobivanje vrednosti v / iz postopka.
Zaključek
To je nekaj vprašanj za intervju z JDBC, ki zajemajo tako osnovno kot nadaljevalno raven. Upamo, da vam bo ta vadnica dala pregled JDBC. Zgoraj navedena pojasnila bodo obogatila vaše znanje in povečala vaše razumevanje JDBC. Vse najboljše!!!
Priporočeno branje
- Vadnica za povezavo Java JDBC s primerom programiranja
- Upravljanje transakcij Java JDBC s primerom
- Java JDBC Vadnica: Kaj je JDBC (Java Database Connectivity)
- JDBC ResultSet: Kako uporabiti Java ResultSet za pridobivanje podatkov
- Vprašanja in odgovori za intervjuje
- 25 najboljših agilnih preizkusnih vprašanj in odgovorov
- Vprašanja in odgovori za preizkušanje ETL
- Najboljših 25 vprašanj in odgovorov za intervju za spletne storitve Java