Mitä eroa on JPA: n ja JDBC: n välillä?


Vastaus 1:

JDBC on standardi työkalu yhteyden muodostamiseen suoraan tietokantaan ja SQL: n suorittamiseen esimerkiksi valitsemalla * TableName: stä jne. Tietosarjat voidaan palauttaa, joita käyttäjä voi käsitellä sovelluksessaan, ja hän voi tehdä kaikki tavalliset asiat, kuten päivittää, poistaa , lisää proseduurit jne. Se on yksi useimpien Java DBA: n (mukaan lukien JPA-palveluntarjoajat) taustalla olevista tekniikoista.

Yksi perinteisten JDBC-sovellusten tärkeimmistä ongelmista on se, että käyttäjällä voi usein olla crappy-koodi, jossa logiikka sekoitetaan SQL: ään, tapahtuu paljon kartoitusta tietojoukkojen ja objektien välillä jne.

JPA on virallinen työkalu objektien suhteiden kartoittamiseen. JPA on tekniikka, jonka avulla käyttäjä voi kartoittaa objektien välillä koodi- ja tietokantataulukoissa. JPA voi "piilottaa" SQL: n kehittäjältä niin, että kaikki ne käsittelevät Java-luokkia, ja palveluntarjoaja antaa sinun tallentaa ne ja ladata ne etäyhteyden kautta. Useimmiten XML-kartoitustiedostoja tai merkintöjä settereissä ja gettereissä voidaan käyttää kertomaan JPA-palveluntarjoajalle. mitkä käyttäjän objektikartan kentät mihin tietokannan kenttiin. horrostila on suosituin JPA-palveluntarjoaja.

joitain muita esimerkkejä, kuten OpenJPA, toplink jne.

Lepotilat ja muut suositut JPA-palveluntarjoajat kirjoittavat SQL: ää ja lukevat ja kirjoittavat DBV: n avulla JDBC: llä.

Kiitos.

jos pidät vastauksestasi, äänestä sitä.


Vastaus 2:

Olisi helppoa ymmärtää molempien ero, jos olet aloittelija. Mielestäni sinun pitäisi aloittaa ymmärtämällä ensin ero JDBC: n ja Hibernaten välillä. Toivon, että tiedät mitä JDBC on, silti lyhyt kuvaus: JDBC tarkoittaa Java-tietokantayhteyttä. JDBC on Java-sovellusliittymä, joka yhdistää ja suorittaa kyselyn db: llä. Se tarjoaa ohjaimille yhteyden db: hen. Voit käyttää JDBC API -sovellusta päästäksesi mihin tahansa relaatiotietokantaan tallennettuihin taulukkotietoihin. JDBC API: n avulla voimme tallentaa, päivittää, poistaa ja hakea tietoja tietokannasta.

Mikä hibernate? Se on kehys toisin kuin JDBC, u on vietävä Hibernate-kirjastoja ennen u: n käyttöä, kun taas JDBC on osa itse J2SE: tä. Hibernate tekee samoin kuin JDBC on kehitetty, mutta voit sanoa, että Hibernate on JDBC: n ennakkotaso. Hibernate yksinkertaistaa Java-sovelluksen kehittämistä vuorovaikutuksessa tietokannan kanssa. Se on ORM-työkalu, joka tarkoittaa Java-esineiden kartoittamista db-taulukoilla. Java-luokka voi edustaa taulukkoa db: nä. Esimerkiksi, jos kartoitit "emp_26" -taulukon Työntekijäluokka Hibernate-ohjelmassa, kirjoitat yksinkertaisen oliopohjaisen kyselyn kaikkien työntekijöiden hakemiseksi empl_26-taulukosta: "Työntekijältä" // Hibernate "Valitse * emp_26" // JDBC.

Hibernate tarjoaa helvetin paljon ominaisuuksia, kuten välimuisti, assosiaatiokartoitus, perintökartta, HQL, sivutus n, paljon muuta, joita ei ole saatavana JDBC: ssä.

JPA: hon tullen, se on eritelmä, se on sarja luokkia ja rajapintoja. JPA tarvitsee työkalun sen toteuttamiseksi ja työkalu voi olla horrostila. Toteuttamalla JPA: n, voit tehdä saman kuin Hibernate, mutta JPA-muodossa. Jos JPA on tanssi, Hibernate tai jokin muu työkalu vaaditaan sen tarjoamiseksi. Muuten se ei tarkoita, että Hibernate ei voi tanssia ilman JPA: ta, Hibernate on saanut myös oman tanssin.


Vastaus 3:

JDBC on standardi yhteyden muodostamiseen suoraan DB: hen ja SQL: n suorittamiseen sitä vastaan ​​- esim. SELECT * FROM USERS jne. Palautettavissa olevat tietojoukot, joita voit käsitellä sovelluksessasi, ja voit tehdä kaikki tavalliset asiat, kuten INSERT, DELETE, suorita tallennettuja menettelytapoja jne. Se on yksi suurimman Java-tietokantakäytön taustalla olevista tekniikoista (mukaan lukien JPA-palveluntarjoajat).

Yksi perinteisten JDBC-sovellusten ongelmista on, että sinulla voi usein olla crappy-koodi, jossa tapahtuu paljon kartoitusta tietojoukkojen ja objektien välillä, logiikka sekoitetaan SQL: ään jne.

JPA on objektien relaatiotietojen kartoitus. Tämä on tekniikka, jonka avulla voit kartoittaa objektien välillä koodi- ja tietokantataulukoissa. Tämä voi "piilottaa" SQL: n kehittäjältä niin, että kaikki heidän käsittelemänsä ovat Java-luokkia, ja palveluntarjoaja antaa sinun tallentaa ne ja ladata ne taianomaisesti. Useimmiten XML-kartoitustiedostoja tai merkintöjä gettereissa ja asettajissa voidaan käyttää JPA-palveluntarjoajan ilmoittamiseen, mitkä kohteitasi kartalla mitkä kentät ovat DB: ssä. Kuuluisin JPA-palveluntarjoaja on Hibernate, joten se on hyvä paikka aloittaa konkreettisten esimerkkien löytämiseksi.

Muita esimerkkejä ovat OpenJPA, toplink jne.